IU Bigger than range strategyDESCRIPTION
IU Bigger Than Range Strategy is designed to capture breakout opportunities by identifying candles that are significantly larger than the previous range. It dynamically calculates the high and low of the last N candles and enters trades when the current candle's range exceeds the previous range. The strategy includes multiple stop-loss methods (Previous High/Low, ATR, Swing High/Low) and automatically manages take-profit and stop-loss levels based on user-defined risk-to-reward ratios. This versatile strategy is optimized for higher timeframes and assets like BTC but can be fine-tuned for different instruments and intervals.
USER INPUTS:
Look back Length: Number of candles to calculate the high-low range. Default is 22.
Risk to Reward: Sets the target reward relative to the stop-loss distance. Default is 3.
Stop Loss Method: Choose between:(Default is "Previous High/Low")
- Previous High/Low
- ATR (Average True Range)
- Swing High/Low
ATR Length: Defines the length for ATR calculation (only applicable when ATR is selected as the stop-loss method) (Default is 14).
ATR Factor: Multiplier applied to the ATR to determine stop-loss distance(Default is 2).
Swing High/Low Length: Specifies the length for identifying swing points (only applicable when Swing High/Low is selected as the stop-loss method).(Default is 2)
LONG CONDITION:
The current candle’s range (absolute difference between open and close) is greater than the previous range.
The closing price is higher than the opening price (bullish candle).
SHORT CONDITIONS:
The current candle’s range exceeds the previous range.
The closing price is lower than the opening price (bearish candle).
LONG EXIT:
Stop-loss:
- Previous Low
- ATR-based trailing stop
- Recent Swing Low
Take-profit:
- Defined by the Risk-to-Reward ratio (default 3x the stop-loss distance).
SHORT EXIT:
Stop-loss:
- Previous High
- ATR-based trailing stop
- Recent Swing High
Take-profit:
- Defined by the Risk-to-Reward ratio (default 3x the stop-loss distance).
ALERTS:
Long Entry Triggered
Short Entry Triggered
WHY IT IS UNIQUE:
This strategy dynamically adapts to different market conditions by identifying candles that exceed the previous range, ensuring that it only enters trades during strong breakout scenarios.
Multiple stop-loss methods provide flexibility for different trading styles and risk profiles.
The visual representation of stop-loss and take-profit levels with color-coded plots improves trade monitoring and decision-making.
HOW USERS CAN BENEFIT FROM IT:
Ideal for breakout traders looking to capitalize on momentum-driven price moves.
Provides flexibility to customize stop-loss methods and fine-tune risk management parameters.
Helps minimize drawdowns with a strong risk-to-reward framework while maximizing profit potential.
"high low" için komut dosyalarını ara
Highs & Lows - Multi TimeFrame### **📌 HL-MWD (Highs & Lows - Multi Timeframe Indicator) – Community Release**
#### **🔹 Overview**
The **HL-MWD Indicator** is a **multi-timeframe support & resistance tool** that plots **historical highs and lows** from **daily, weekly, and monthly timeframes** onto an intraday chart. It helps traders **identify key levels of support and resistance** that have influenced price action over different timeframes.
This indicator is useful for **day traders, swing traders, and position traders** who rely on **multi-timeframe analysis** to spot critical price levels.
---
### **🔥 Key Features**
✅ **Plots Highs & Lows for Daily, Weekly, and Monthly Timeframes**
✅ **Customizable Lookback Periods for Each Timeframe**
✅ **Adjustable Line Colors, Styles (Solid, Dotted, Dashed), and Widths**
✅ **Extend Lines into the Future to Identify Key Price Levels**
✅ **Option to Display Price Labels for Each Level**
✅ **Gradient Option to Highlight Recent Highs & Lows (Disabled by Default)**
✅ **Compatible with Intraday, Daily, and Weekly Charts**
---
### **📈 How It Works**
- **Daily Highs & Lows:** Captures the **highest and lowest prices** within the selected lookback period (default: **14 bars**).
- **Weekly Highs & Lows:** Marks the **highest and lowest prices** within the chosen weekly lookback (default: **52 bars**).
- **Monthly Highs & Lows:** Displays the **high and low points** from the monthly timeframe (default: **36 bars**).
- **Extended Lines:** Project past highs and lows **into the future** to help identify **potential support & resistance zones**.
---
### **⚠️ TradingView Lookback Limitations**
🔹 **TradingView has a limit on how many historical bars can be accessed per timeframe**, which affects how far back the indicator can retrieve data.
🔹 **Intraday charts (e.g., 5m, 15m) have a limited number of past bars**, meaning:
- **You won’t be able to view 36 months' worth of monthly levels** on a **5-minute chart**, because TradingView doesn’t store that much data in lower timeframes.
- **If multiple timeframes (e.g., weekly + monthly) are enabled at the same time**, some historical data may **not be available on shorter timeframes**.
🔹 **Recommendation:**
- If using **monthly lookbacks (36 months+), view them on a daily or higher timeframe**.
- If using **weekly lookbacks (52 weeks+), higher intraday timeframes (e.g., 1-hour, 4-hour) are better suited**.
- **Lower timeframes (1m, 5m, 15m) may miss some levels** if TradingView's bar limit is exceeded.
---
### **⚙️ Customization Options**
| **Setting** | **Default Value** | **Description** |
|------------------|----------------|----------------|
| **Daily Lookback** | `14` | Number of bars used to calculate daily highs/lows. |
| **Weekly Lookback** | `52` | Number of bars used to calculate weekly highs/lows. |
| **Monthly Lookback** | `36` | Number of bars used to calculate monthly highs/lows. |
| **Line Colors** | Daily: `Blue` Weekly: `Green` Monthly: `Red` | Customizable colors for each timeframe. |
| **Line Style** | `Solid` | Options: Solid, Dashed, Dotted. |
| **Line Width** | `1` | Thickness of the plotted lines. |
| **Extend Line** | `1` | Controls how far the highs/lows extend into the future. |
| **Display Price Labels** | `Enabled` | Shows price labels on each level. |
---
### **🛠️ How to Use It**
- **Enable/disable different timeframes** based on your strategy.
- **Customize colors, line styles, and widths** to match your charting style.
- **Use extended lines to identify support & resistance zones.**
- **Watch price reactions at these levels** for potential entries, exits, and stop-loss placements.
---
### **🚀 Final Thoughts**
The **HL-MWD Indicator** is a **powerful multi-timeframe tool** that helps traders **visualize key support & resistance levels** from higher timeframes on an intraday chart.
⚠️ **However, TradingView’s lookback limits apply—so for longer-term levels, higher timeframes are recommended.**
📌 **Now published for the community!** Let me know if you need any last-minute tweaks! 🔥
HTF Hi-Lo Zones [CHE]HTF Hi-Lo Zones Indicator
The HTF Hi-Lo Zones Indicator is a Pine Script tool designed to highlight important high and low values from a selected higher timeframe. It provides traders with clear visual zones where price activity has reached significant points, helping in decision-making by identifying potential support and resistance levels. This indicator is customizable, allowing users to select the resolution type, control the visualization of session ranges, and even display detailed information about the chosen timeframe.
Key Functionalities
1. Timeframe Resolution Selection:
- The indicator offers three modes to determine the resolution:
- Automatic: Dynamically calculates the higher timeframe based on the current chart's resolution.
- Multiplier: Allows users to apply a multiplier to the current chart's timeframe.
- Manual: Enables manual input for custom resolution settings.
- Each resolution type ensures flexibility to suit different trading styles and strategies.
2. Data Fetching for High and Low Values:
- The indicator retrieves the current high and low values for the selected higher timeframe using `request.security`.
- It also calculates the lowest and highest values over a configurable lookback period, providing insights into significant price movements within the chosen timeframe.
3. Session High and Low Detection:
- The indicator detects whether the current value represents a new session high or low by comparing the highest and lowest values with the current data.
- This is crucial for identifying breakouts or significant turning points during a session.
4. Visual Representation:
- When a new session high or low is detected:
- Range Zones: A colored box marks the session's high-to-low range.
- Labels: Optional labels indicate "New High" or "New Low" for clarity.
- Users can customize colors, transparency, and whether range outlines or labels should be displayed.
5. Information Box:
- An optional dashboard displays details about the chosen timeframe resolution and current session activity.
- The box's size, position, and colors are fully customizable.
6. Session Tracking:
- Tracks session boundaries, updating the visualization dynamically as the session progresses.
- Displays session-specific maximum and minimum values if enabled.
7. Additional Features:
- Configurable dividers for session or daily boundaries.
- Transparency and styling options for the displayed zones.
- A dashboard for advanced visualization and information overlay.
Key Code Sections Explained
1. Resolution Determination:
- Depending on the user's input (Auto, Multiplier, or Manual), the script determines the appropriate timeframe resolution for higher timeframe analysis.
- The resolution adapts dynamically based on intraday, daily, or higher-period charts.
2. Fetching Security Data:
- Using the `getSecurityDataFunction`, the script fetches high and low values for the chosen timeframe, including historical and real-time data management to avoid repainting issues.
3. Session High/Low Logic:
- By comparing the highest and lowest values over a lookback period, the script identifies whether the current value is a new session high or low, updating session boundaries and initiating visual indicators.
4. Visualization:
- The script creates visual representations using `box.new` for range zones and `label.new` for session labels.
- These elements update dynamically to reflect the most recent data.
5. Customization Options:
- Users can configure the appearance, behavior, and displayed data through multiple input options, ensuring adaptability to individual trading preferences.
This indicator is a robust tool for tracking higher timeframe activity, offering a blend of automation, customization, and visual clarity to enhance trading strategies.
Disclaimer
The content provided, including all code and materials, is strictly for educational and informational purposes only. It is not intended as, and should not be interpreted as, financial advice, a recommendation to buy or sell any financial instrument, or an offer of any financial product or service. All strategies, tools, and examples discussed are provided for illustrative purposes to demonstrate coding techniques and the functionality of Pine Script within a trading context.
Any results from strategies or tools provided are hypothetical, and past performance is not indicative of future results. Trading and investing involve high risk, including the potential loss of principal, and may not be suitable for all individuals. Before making any trading decisions, please consult with a qualified financial professional to understand the risks involved.
By using this script, you acknowledge and agree that any trading decisions are made solely at your discretion and risk.
Best regards and happy trading
Chervolino
CandleCandle: A Comprehensive Pine Script™ Library for Candlestick Analysis
Overview
The Candle library, developed in Pine Script™, provides traders and developers with a robust toolkit for analyzing candlestick data. By offering easy access to fundamental candlestick components like open, high, low, and close prices, along with advanced derived metrics such as body-to-wick ratios, percentage calculations, and volatility analysis, this library enables detailed insights into market behavior.
This library is ideal for creating custom indicators, trading strategies, and backtesting frameworks, making it a powerful resource for any Pine Script™ developer.
Key Features
1. Core Candlestick Data
• Open : Access the opening price of the current candle.
• High : Retrieve the highest price.
• Low : Retrieve the lowest price.
• Close : Access the closing price.
2. Candle Metrics
• Full Size : Calculates the total range of the candle (high - low).
• Body Size : Computes the size of the candle’s body (open - close).
• Wick Size : Provides the combined size of the upper and lower wicks.
3. Wick and Body Ratios
• Upper Wick Size and Lower Wick Size .
• Body-to-Wick Ratio and Wick-to-Body Ratio .
4. Percentage Calculations
• Upper Wick Percentage : The proportion of the upper wick size relative to the full candle size.
• Lower Wick Percentage : The proportion of the lower wick size relative to the full candle size.
• Body Percentage and Wick Percentage relative to the candle’s range.
5. Candle Direction Analysis
• Determines if a candle is "Bullish" or "Bearish" based on its closing and opening prices.
6. Price Metrics
• Average Price : The mean of the open, high, low, and close prices.
• Midpoint Price : The midpoint between the high and low prices.
7. Volatility Measurement
• Calculates the standard deviation of the OHLC prices, providing a volatility metric for the current candle.
Code Architecture
Example Functionality
The library employs a modular structure, exporting various functions that can be used independently or in combination. For instance:
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org
// © DevArjun
//@version=6
indicator("Candle Data", overlay = true)
import DevArjun/Candle/1 as Candle
// Body Size %
bodySize = Candle.BodySize()
// Determining the candle direction
candleDirection = Candle.CandleDirection()
// Calculating the volatility of the current candle
volatility = Candle.Volatility()
// Plotting the metrics (for demonstration)
plot(bodySize, title="Body Size", color=color.blue)
label.new(bar_index, high, candleDirection, style=label.style_circle)
Scalability
The modularity of the Candle library allows seamless integration into more extensive trading systems. Functions can be mixed and matched to suit specific analytical or strategic needs.
Use Cases
Trading Strategies
Developers can use the library to create strategies based on candle properties such as:
• Identifying long-bodied candles (momentum signals).
• Detecting wicks as potential reversal zones.
• Filtering trades based on candle ratios.
Visualization
Plotting components like body size, wick size, and directional labels helps visualize market behavior and identify patterns.
Backtesting
By incorporating volatility and ratio metrics, traders can design and test strategies on historical data, ensuring robust performance before live trading.
Education
This library is a great tool for teaching candlestick analysis and how each component contributes to market behavior.
Portfolio Highlights
Project Objective
To create a Pine Script™ library that simplifies candlestick analysis by providing comprehensive metrics and insights, empowering traders and developers with advanced tools for market analysis.
Development Challenges and Solutions
• Challenge : Achieving high precision in calculating ratios and percentages.
• Solution : Implemented robust mathematical operations and safeguarded against division-by-zero errors.
• Challenge : Ensuring modularity and scalability.
• Solution : Designed functions as independent modules, allowing flexible integration.
Impact
• Efficiency : The library reduces the time required to calculate complex candlestick metrics.
• Versatility : Supports various trading styles, from scalping to swing trading.
• Clarity : Clean code and detailed documentation ensure usability for developers of all levels.
Conclusion
The Candle library exemplifies the power of Pine Script™ in simplifying and enhancing candlestick analysis. By including this project in your portfolio, you showcase your expertise in:
• Financial data analysis.
• Pine Script™ development.
• Creating tools that solve real-world trading challenges.
This project demonstrates both technical proficiency and a keen understanding of market analysis, making it an excellent addition to your professional portfolio.
Library "Candle"
A comprehensive library to access and analyze the basic components of a candlestick, including open, high, low, close prices, and various derived metrics such as full size, body size, wick sizes, ratios, percentages, and additional analysis metrics.
Open()
Open
@description Returns the opening price of the current candle.
Returns: float - The opening price of the current candle.
High()
High
@description Returns the highest price of the current candle.
Returns: float - The highest price of the current candle.
Low()
Low
@description Returns the lowest price of the current candle.
Returns: float - The lowest price of the current candle.
Close()
Close
@description Returns the closing price of the current candle.
Returns: float - The closing price of the current candle.
FullSize()
FullSize
@description Returns the full size (range) of the current candle (high - low).
Returns: float - The full size of the current candle.
BodySize()
BodySize
@description Returns the body size of the current candle (open - close).
Returns: float - The body size of the current candle.
WickSize()
WickSize
@description Returns the size of the wicks of the current candle (full size - body size).
Returns: float - The size of the wicks of the current candle.
UpperWickSize()
UpperWickSize
@description Returns the size of the upper wick of the current candle.
Returns: float - The size of the upper wick of the current candle.
LowerWickSize()
LowerWickSize
@description Returns the size of the lower wick of the current candle.
Returns: float - The size of the lower wick of the current candle.
BodyToWickRatio()
BodyToWickRatio
@description Returns the ratio of the body size to the wick size of the current candle.
Returns: float - The body to wick ratio of the current candle.
UpperWickPercentage()
UpperWickPercentage
@description Returns the percentage of the upper wick size relative to the full size of the current candle.
Returns: float - The percentage of the upper wick size relative to the full size of the current candle.
LowerWickPercentage()
LowerWickPercentage
@description Returns the percentage of the lower wick size relative to the full size of the current candle.
Returns: float - The percentage of the lower wick size relative to the full size of the current candle.
WickToBodyRatio()
WickToBodyRatio
@description Returns the ratio of the wick size to the body size of the current candle.
Returns: float - The wick to body ratio of the current candle.
BodyPercentage()
BodyPercentage
@description Returns the percentage of the body size relative to the full size of the current candle.
Returns: float - The percentage of the body size relative to the full size of the current candle.
WickPercentage()
WickPercentage
@description Returns the percentage of the wick size relative to the full size of the current candle.
Returns: float - The percentage of the wick size relative to the full size of the current candle.
CandleDirection()
CandleDirection
@description Returns the direction of the current candle.
Returns: string - "Bullish" if the candle is bullish, "Bearish" if the candle is bearish.
AveragePrice()
AveragePrice
@description Returns the average price of the current candle (mean of open, high, low, and close).
Returns: float - The average price of the current candle.
MidpointPrice()
MidpointPrice
@description Returns the midpoint price of the current candle (mean of high and low).
Returns: float - The midpoint price of the current candle.
Volatility()
Volatility
@description Returns the standard deviation of the OHLC prices of the current candle.
Returns: float - The volatility of the current candle.
supertrendLibrary "supertrend"
supertrend : Library dedicated to different variations of supertrend
supertrend_atr(length, multiplier, atrMaType, source, highSource, lowSource, waitForClose, delayed)
supertrend_atr: Simple supertrend based on atr but also takes into consideration of custom MA Type, sources
Parameters:
length (simple int) : : ATR Length
multiplier (simple float) : : ATR Multiplier
atrMaType (simple string) : : Moving Average type for ATR calculation. This can be sma, ema, hma, rma, wma, vwma, swma
source (float) : : Default is close. Can Chose custom source
highSource (float) : : Default is high. Can also use close price for both high and low source
lowSource (float) : : Default is low. Can also use close price for both high and low source
waitForClose (simple bool) : : Considers source for direction change crossover if checked. Else, uses highSource and lowSource.
delayed (simple bool) : : if set to true lags supertrend atr stop based on target levels.
Returns: dir : Supertrend direction
supertrend : BuyStop if direction is 1 else SellStop
supertrend_bands(bandType, maType, length, multiplier, source, highSource, lowSource, waitForClose, useTrueRange, useAlternateSource, alternateSource, sticky)
supertrend_bands: Simple supertrend based on atr but also takes into consideration of custom MA Type, sources
Parameters:
bandType (simple string) : : Type of band used - can be bb, kc or dc
maType (simple string) : : Moving Average type for Bands. This can be sma, ema, hma, rma, wma, vwma, swma
length (simple int) : : Band Length
multiplier (float) : : Std deviation or ATR multiplier for Bollinger Bands and Keltner Channel
source (float) : : Default is close. Can Chose custom source
highSource (float) : : Default is high. Can also use close price for both high and low source
lowSource (float) : : Default is low. Can also use close price for both high and low source
waitForClose (simple bool) : : Considers source for direction change crossover if checked. Else, uses highSource and lowSource.
useTrueRange (simple bool) : : Used for Keltner channel. If set to false, then high-low is used as range instead of true range
useAlternateSource (simple bool) : - Custom source is used for Donchian Chanbel only if useAlternateSource is set to true
alternateSource (float) : - Custom source for Donchian channel
sticky (simple bool) : : if set to true borders change only when price is beyond borders.
Returns: dir : Supertrend direction
supertrend : BuyStop if direction is 1 else SellStop
supertrend_zigzag(length, history, useAlternativeSource, alternativeSource, source, highSource, lowSource, waitForClose, atrlength, multiplier, atrMaType)
supertrend_zigzag: Zigzag pivot based supertrend
Parameters:
length (simple int) : : Zigzag Length
history (simple int) : : number of historical pivots to consider
useAlternativeSource (simple bool)
alternativeSource (float)
source (float) : : Default is close. Can Chose custom source
highSource (float) : : Default is high. Can also use close price for both high and low source
lowSource (float) : : Default is low. Can also use close price for both high and low source
waitForClose (simple bool) : : Considers source for direction change crossover if checked. Else, uses highSource and lowSource.
atrlength (simple int) : : ATR Length
multiplier (simple float) : : ATR Multiplier
atrMaType (simple string) : : Moving Average type for ATR calculation. This can be sma, ema, hma, rma, wma, vwma, swma
Returns: dir : Supertrend direction
supertrend : BuyStop if direction is 1 else SellStop
zupertrend(length, history, useAlternativeSource, alternativeSource, source, highSource, lowSource, waitForClose, atrlength, multiplier, atrMaType)
zupertrend: Zigzag pivot based supertrend
Parameters:
length (simple int) : : Zigzag Length
history (simple int) : : number of historical pivots to consider
useAlternativeSource (simple bool)
alternativeSource (float)
source (float) : : Default is close. Can Chose custom source
highSource (float) : : Default is high. Can also use close price for both high and low source
lowSource (float) : : Default is low. Can also use close price for both high and low source
waitForClose (simple bool) : : Considers source for direction change crossover if checked. Else, uses highSource and lowSource.
atrlength (simple int) : : ATR Length
multiplier (simple float) : : ATR Multiplier
atrMaType (simple string) : : Moving Average type for ATR calculation. This can be sma, ema, hma, rma, wma, vwma, swma
Returns: dir : Supertrend direction
supertrend : BuyStop if direction is 1 else SellStop
zsupertrend(zigzagpivots, history, source, highSource, lowSource, waitForClose, atrMaType, atrlength, multiplier)
zsupertrend: Same as zigzag supertrend. But, works on already calculated array rather than Calculating fresh zigzag
Parameters:
zigzagpivots (array) : : Precalculated zigzag pivots
history (simple int) : : number of historical pivots to consider
source (float) : : Default is close. Can Chose custom source
highSource (float) : : Default is high. Can also use close price for both high and low source
lowSource (float) : : Default is low. Can also use close price for both high and low source
waitForClose (simple bool) : : Considers source for direction change crossover if checked. Else, uses highSource and lowSource.
atrMaType (simple string) : : Moving Average type for ATR calculation. This can be sma, ema, hma, rma, wma, vwma, swma
atrlength (simple int) : : ATR Length
multiplier (simple float) : : ATR Multiplier
Returns: dir : Supertrend direction
supertrend : BuyStop if direction is 1 else SellStop
UVR Crypto TrendINDICATOR OVERVIEW: UVR CRYPTO TREND
The UVR Crypto Trend indicator is a custom-built tool designed specifically for cryptocurrency markets, utilizing advanced volatility, momentum, and trend-following techniques. It aims to identify trend reversals and provide buy and sell signals by analyzing multiple factors, such as price volatility(UVR), RSI (Relative Strength Index), CMF (Chaikin Money Flow), and EMA (Exponential Moving Average). The indicator is optimized for CRYPTO MARKETS only.
KEY FEATURES AND HOW IT WORKS
Volatility Analysis with UVR
The UVR (Ultimate Volatility Rate) is a proprietary calculation that measures market volatility by comparing significant price extremes and smoothing the data over time.
Purpose: UVR aims to reduce noise in low-volatility environments and highlight significant movements during higher-volatility periods. While it strives to improve filtering in low-volatility conditions, it does not guarantee perfect performance, making it a balanced and adaptable tool for dynamic markets like cryptocurrency.
HOW UVR (ULTIMATE VOLATILITY RATE) IS CALCULATED
UVR is calculated using a method that ensures precise measurement of market volatility by comparing price extremes across consecutive candles:
Volatility Components:
Two values are calculated to represent potential price fluctuations:
The absolute difference between the current candle's high and the previous candle's low:
Volatility Component 1=∣High−Low ∣
The absolute difference between the previous candle's high and the current candle's low:
Volatility Component 2=∣High −Low∣
Volatility Ratio:
The larger of the two components is selected as the Volatility Ratio, ensuring UVR captures the most significant movement:
Volatility Ratio=max(Volatility Component 1,Volatility Component 2)
Smoothing with SMMA:
To stabilize the volatility calculation, the Volatility Ratio is smoothed using a Smoothed Moving Average (SMMA) over a user-defined period (e.g., 14 candles):
UVR=(UVR(Previous)×(Period−1)+Volatility Ratio)/Period
This calculation ensures UVR adapts dynamically to market conditions, focusing on significant price movements while filtering out noise.
RSI FOR MOMENTUM DETECTION
RSI (Relative Strength Index) identifies overbought and oversold conditions.
Trend Confirmation at the 50 Level
RSI values crossing above 50 signal the potential start of an upward trend.
RSI values crossing below 50 indicate the potential start of a downward trend.
Key Reversals at Extreme Levels
RSI detects trend reversals at overbought (>70) and oversold (<30) levels.
For example:
Overbought Trend Reversal: RSI >70 followed by bearish price action signals a potential downtrend.
Oversold Trend Reversal: RSI <30 with bullish confirmation signals a potential uptrend.
Rare Extreme RSI Readings
Extreme levels, such as RSI <12 (oversold) or RSI >88 (overbought), are used to identify rare yet powerful reversals.
---HOW IT DIFFERS FROM OTHER INDICATORS---
Using UVR High and Low Values
The Ultimate Volatility Rate (UVR) focuses on analyzing the high and low price ranges of the market to measure volatility.
Unlike traditional trend indicators that rely primarily on momentum or moving average crossovers, UVR leverages price extremes to better identify trend reversals.
This approach ensures fewer false signals during low-volatility phases and more accurate trend detection during high-volatility conditions.
UVR as the Core Component
The indicator is fundamentally built around UVR as the primary filter, while supporting tools like RSI (momentum detection), CMF (volume confirmation), and EMA (trend validation) complement its functionality.
By integrating these additional components, the indicator provides a multidimensional analysis rather than relying solely on a single approach.
Dynamic Adaptation to Volatility
UVR dynamically adjusts to market conditions, striving to improve filtering in low-volatility phases. While not flawless, this approach minimizes false signals and adapts more effectively to varying levels of market activity.
Trend Clouds for Visual Guidance
UVR-based dynamic clouds visually mark high and low price areas, highlighting potential consolidation or retracement zones.
These clouds serve as guides for setting stop-loss or take-profit levels, offering clear risk management strategies.
BUY AND SELL SIGNAL LOGIC
BUY CONDITIONS
Momentum-Based Buy-Entry
RSI >50, CMF >0, and the close price is above EMA50.
The price difference between open and close exceeds a threshold based on UVR.
Oversold Reversal
RSI <30 and CMF >0 with a strong bullish candle (close > open and UVR-based sensitivity filter).
Breakout Confirmation
The price breaks above a previously identified resistance, with conditions for RSI and CMF supporting the breakout.
Reversal from Oversold RSI Extreme
RSI <12 on the previous candle with a strong rebound on the current candle with UVR confirmation filter.
SELL CONDITIONS
Momentum-Based Sell-Entry
RSI <50, CMF <0, and the close price is below EMA50.
The price difference between open and close exceeds the UVR threshold.
Overbought Reversal
RSI >70 with bearish price action (open > close and UVR-based sensitivity filter).
Breakdown Confirmation
The price breaks below a previously identified support, with RSI and CMF supporting the breakdown.
Reversal from Overbought RSI Extreme
RSI >88 on the previous candle with a bearish confirmation on the current candle with UVR confirmation filter.
BUY AND SELL SIGNALS VISUALIZATION
The UVR Crypto Trend Indicator visually represents buy and sell conditions using dynamic plots, making it easier for traders to interpret and act on the signals. Below is an explanation of the visual representation:
Buy Signals and Visualization
Signal Trigger:
A buy signal is generated when one of the defined Buy Conditions is met (e.g., RSI >50, CMF >0, price above EMA50).
Visual Representation:
A blue upward arrow appears at the candle where the buy condition is triggered.
A blue cloud forms above the price candles, representing the strength of the bullish trend. The cloud dynamically adapts to market volatility, using the UVR calculation to mark support zones or consolidation levels.
Purpose of the Blue Cloud:
It acts as a visual guide for price movements and stay horizontal when the trend is not moving up
Sell Signals and Visualization
Signal Trigger:
A sell signal is generated when one of the defined Sell Conditions is met (e.g., RSI <50, CMF <0, price below EMA50).
Visual Representation:
A red downward arrow appears at the candle where the sell condition is triggered.
A red cloud forms below the price candles, representing the strength of the bearish trend. Like the blue cloud, it uses the UVR calculation to dynamically mark resistance zones or potential retracement levels.
Purpose of the Red Cloud:
It acts as a visual guide for price movements and stay horizontal when the trend is not moving down.
CONCLUSION
The UVR Crypto Trend indicator provides a powerful tool for trend reversal detection by combining volatility analysis, momentum confirmation, and trend-following techniques. Its unique use of the Ultimate Volatility Rate (UVR) as a core element, supported by proven indicators like RSI, CMF, and EMA, ensures reliable and actionable signals tailored for the crypto market's dynamic nature. By leveraging UVR’s high and low price range analysis, it achieves a level of precision that traditional indicators lack, making it a high-performing system for cryptocurrency traders.
Trading Sessions with Highs and LowsTrading Sessions with Highs and Lows is designed to visually highlight specific trading sessions on the chart, providing traders with key insights into market behavior during these time periods. Here’s a detailed explanation of how the indicator works:
Key Features
1. Session Boxes:
• The indicator plots colored boxes on the chart to represent the price range of defined trading sessions.
• Each box spans the session’s start and end times and encapsulates the high and low prices during that period.
• Two trading sessions are defined by default:
• USA Trading Session: 9:30 AM - 4:00 PM (New York Time).
• UK Trading Session: 8:00 AM - 4:30 PM (London Time).
2. Session Labels:
• The name of the session (e.g., “USA” or “UK”) is displayed above the session box for clear identification.
3. High and Low Markers:
• Markers are added to the chart at the session’s high and low points:
• High Marker: A green label indicating the session high.
• Low Marker: A red label indicating the session low.
4. Dynamic Reset:
• After the session ends, the session high and low values are reset to na to prepare for the next trading day.
5. Customizable Background Colors:
• Each session’s box has a distinct, semi-transparent background color for better visual separation.
How It Works
1. Core Functionality:
• A function, plot_box, takes the session name, start time, end time, and background color as input.
• It calculates whether the current time is within the session.
• During the session:
• It tracks the session’s highest and lowest prices.
• It identifies the bars where the high and low occurred.
• At the session’s end:
• It plots a box on the chart covering the session’s time and price range.
• Labels are created for the session name and its high/low points.
2. Session Timing:
• Timestamps for the USA and UK trading sessions are calculated using the timestamp function with respective time zones.
3. Visual Elements:
• The box.new function draws the session boxes on the chart.
• The label.new function creates session name and high/low labels.
Usage
• Overlay Mode: The indicator is applied directly on the price chart (overlay=true), making it easy to visualize session-specific price behavior.
• Trading Strategy:
• Identify session-specific support and resistance levels.
• Observe price action trends during key trading periods.
• Align trading decisions with session dynamics.
Customization
While the indicator is preset for the USA and UK trading sessions, it can be easily modified:
1. Add/Remove Sessions: Define additional sessions by providing their start and end times.
2. Change Colors: Update the background_color in the plot_box calls to use different colors for sessions.
3. Adjust Time Zones: Replace the current time zones with others relevant to your trading style.
Visualization Example
• USA Session:
• Time: 9:30 AM - 4:00 PM (New York Time).
• Box Color: Semi-transparent orange.
• UK Session:
• Time: 8:00 AM - 4:30 PM (London Time).
• Box Color: Semi-transparent green.
Why Use This Indicator?
1. Market Awareness: Easily spot price behavior during high-liquidity trading periods.
2. Trend Analysis: Analyze how sessions overlap or affect each other.
3. Session Boundaries: Use session high/low levels as dynamic support and resistance zones.
This indicator is an essential tool for intraday and swing traders who want to align their strategies with key market timings.
Equal Highs and LowsDescription:
The ‘Equal Highs and Lows’ indicator is a technical analysis tool that marks identical price levels on a trading chart using the current time-frame, assisting traders in identifying potential support and resistance zones or liquidity draws. It creates a horizontal line connecting points where the price has created equal highs and lows within a specified lookback period. Unique to this tool, it maintains a clean chart by removing the line once the price surpasses the equal highs or falls below the equal lows, ensuring only the currently relevant equal highs and lows are highlighted.
Features:
Customization Options: Users can adjust the appearance of the lines (color, width, and style) to match their chart setup or preferences. Users can also choose to extend the lines marking the equal highs/lows to the right of the chart making the equal high/low levels more easier to visualize.
User-Defined Lookback Length: The number of bars to look back for finding equal highs and lows can be set by the user, allowing for flexibility in different market conditions.
How It Works:
The indicator meticulously scans the chart over a user-specified lookback duration, identifying bars with matching high or low values that have not been mitigated on the current chat timeframe, thereby constructing an index of equal values. It subsequently connects these equal values on the chart with a line. While this intuitive indicator does not forecast future market trends, it emphasizes significant price levels derived from historical data.
Usage:
Identifying Support and Resistance: The lines drawn by the indicator can be used to identify potential support and resistance zones and/or draws of liquidity, which are crucial for making informed trading decisions.
Strategy Development: Traders can incorporate the visual cues provided by the indicator into their trading strategies, using them as one of the factors for entry or exit decisions.
Originality:
This indicator presents a distinctive method for pinpointing and illustrating equal highs and lows, granting traders a crucial insight into key price levels. It stands apart from conventional indicators by offering extensive personalization and employing a novel approach to augment chart analysis. Uniquely, it retains only unmitigated equal high/low levels on the chart, automatically discarding mitigated price levels once the price has reached that level.
Conclusion:
The "Equal Highs and Lows" indicator is a practical tool for traders looking to enhance their chart analysis with visual cues of significant price levels. Its customization options and innovative approach make it a valuable addition to the trading toolkit, suitable for various trading styles and strategies.
Depth of Market (DOM) [LuxAlgo]The Depth Of Market (DOM) tool allows traders to look under the hood of any market, taking price and volume analysis to the next level. The following features are included: DOM, Time & Sales, Volume Profile, Depth of Market, Imbalances, Buying Pressure, and up to 24 key intraday levels (it really packs a punch).
As a disclaimer, this tool does not use tick data, it is a DOM reconstruction from the provided real-time time series data (price and volume). So the volume you see is from filled orders only, this tool does not show unfilled limit orders.
Traders can enable or disable any of the features at will to avoid being overwhelmed with too much information and to make the tool perform faster.
The features that have the biggest impact on performance are Historical Data Collection, Key Levels (POC & VWAP), Time & Sales, Profile, and Imbalances. Disable these features to improve the indicator computational performance.
🔶 DOM
This is the simplest form of the tool, a simple DOM or ladder that displays the following columns:
PRICE: Price level
BID: Total number of market sell orders filled or limit buy orders filled.
SELL: Sell market orders
BUY: Buy market orders
ASK: Total number of market buy orders filled or limit sell orders filled.
The DOM only collects historical data from the last 24 hours and real-time data.
Traders can select a reset period for the DOM with two options:
DAILY: Resets at the beginning of each trading day
SESSIONS: Resets twice, as DAILY and 15.5 hours later, to coincide with the start of the RTH session for US tickers.
The DOM has two main modes, it can display price levels as ticks or points. The default is automatic based on the current daily volatility, but traders can manually force one mode or the other if they wish.
For convenience, traders have the option to set the number of lines (price levels), and the size of the text and to display only real-time data.
By default, the top price is set to 0 so that the DOM automatically adjusts the price levels to be displayed, but traders can set the top price manually so that the tool displays only the desired price levels in a fixed manner.
🔹 Volume Profile
As additional features to the basic DOM, traders have access to the volume profile histogram and the total volume per price level.
This helps traders identify at a glance key price areas where volume is accumulating (high volume nodes) or areas where volume is lacking (low volume nodes) - these areas are important to some traders who base their decision-making process on them.
🔹 Imbalances
Other added features are imbalances and buying pressure:
Interlevel Imbalance: volume delta between two different price levels
Intralevel Imbalance: delta between buy and sell volume at the same price level
Buying Pressure Percent: percentage of buy volume compared to total volume
Imbalances can help traders identify areas of interest in the price for possible support or resistance.
🔹 Depth
Depth allows traders to see at a glance how much supply is above the current price level or how much demand is below the current price level.
Above the current price level shows the cumulative ask volume (filled sell limit orders) and below the current price level shows the cumulative bid volume (filled buy limit orders).
🔶 KEY LEVELS
The tool includes up to 24 different key intraday levels of particular relevance:
Previous Week Levels
PWH: Previous week high
PWL: Previous week low
PWM: Previous week middle
PWS: Previous week settlement (close)
Previous Day Levels
PDH: Previous day high
PDL: Previous day low
PDM: Previous day middle
PDS: Previous day settlement (close)
Current Day Levels
OPEN: Open of day (or session)
HOD: High of day (or session)
LOD: Low of day (or session)
MOD: Middle of day (or session)
Opening Range
ORH: Open range high
ORL: Open range low
Initial Balance
IBH: Initial balance high
IBL: Initial balance low
VWAP
+3SD: Volume weighted average price plus 3 standard deviations
+2SD: Volume weighted average price plus 2 standard deviations
+1SD: Volume weighted average price plus 1 standard deviation
VWAP: Volume weighted average price
-1SD: Volume weighted average price minus 1 standard deviation
-2SD: Volume weighted average price minus 2 standard deviations
-3SD: Volume weighted average price minus 3 standard deviations
POC: Point of control
Different traders look at different levels, the key levels shown here are objective and specific areas of interest that traders can act on, providing us with potential areas of support or resistance in the price.
🔶 TIME & SALES
The tool also features a full-time and sales panel with time, price, and size columns, a size filter, and the ability to set the timezone to display time in the trader's local time.
The information shown here is what feeds the DOM and it can be useful in several ways, for example in detecting absorption. If a large number of orders are coming into the market but the price is barely moving, this indicates that there is enough liquidity at these levels to absorb all these orders, so if these orders stop coming into the market, the price may turn around.
🔶 SETTINGS
Period: Select the anchoring period to start data collection, DAILY will anchor at the start of the trading day, and SESSIONS will start as DAILY and 15.5 hours later (RTH for US tickers).
Mode: Select between AUTO and MANUAL modes for displaying TICKS or POINTS, in AUTO mode the tool will automatically select TICKS for tickers with a daily average volatility below 5000 ticks and POINTS for the rest of the tickers.
Rows: Select the number of price levels to display
Text Size: Select the text size
🔹 DOM
DOM: Enable/Disable DOM display
Realtime only: Enable/Disable real-time data only, historical data will be collected if disabled
Top Price: Specify the price to be displayed on the top row, set to 0 to enable dynamic DOM
Max updates: Specify how many times the values on the SELL and BUY columns are accumulated until reset.
Profile/Depth size: Maximum size of the histograms on the PROFILE and DEPTH columns.
Profile: Enable/Disable Profile column. High impact on performance.
Volume: Enable/Disable Volume column. Total volume traded at price level.
Interlevel Imbalance: Enable/Disable Interlevel Imbalance column. Total volume delta between the current price level and the price level above. High impact on performance.
Depth: Enable/Disable Depth, showing the cumulative supply above the current price and the cumulative demand below. Impact on performance.
Intralevel Imbalance: Enable/Disable Intralevel Imbalance column. Delta between total buy volume and total sell volume. High impact on performance.
Buying Pressure Percent: Enable/Disable Buy Percent column. Percentage of total buy volume compared to total volume.
Imbalance Threshold %: Threshold for highlighting imbalances. Set to 90 to highlight the top 10% of interlevel imbalances and the top and bottom 10% of intra-level imbalances.
Crypto volume precision: Specify the number of decimals to display on the volume of crypto assets
🔹 Key Levels
Key Levels: Enable/Disable KEY column. Very high performance impact.
Previous Week: Enable/Disable High, Low, Middle, and Close of the previous trading week.
Previous Day: Enable/Disable High, Low, Middle, and Settlement of the previous trading day.
Current Day/Session: Enable/Disable Open, High, Low and Middle of the current period.
Open Range: Enable/Disable High and Low of the first candle of the period.
Initial Balance: Enable/Disable High and Low of the first hour of the period.
VWAP: Enable/Disable Volume-weighted average price of the period with 1, 2, and 3 standard deviations.
POC: Enable/Disable Point of Control (price level with the highest volume traded) of the period.
🔹 Time & Sales
Time & Sales: Enable/Disable time and sales panel.
Timezone offset (hours): Enter your time zone\'s offset (+ or −), including a decimal fraction if needed.
Order Size: Set order size filter. Orders smaller than the value are not displayed.
🔶 THANKS
Hi, I'm makit0 coder of this tool and proud member of the LuxAlgo Opensource team, it's an honor to be part of the LuxAlgo family doing something I love as it's writing opensource code and sharing it with the world. I'd like to thank all of you who use, comment on, and vote for all of our open-source tools, and all of you who give us your support.
And of course thanks to the PineCoders family for all the work in front of and behind the scenes that makes the PineScript community what it is, simply the best.
Peace, Love & PineScript!
Fib Pivot Points HLThis TradingView indicator allows users to select a specific timeframe (TF) and then analyzes the high, low, and closing prices from the past period within that TF to calculate a central pivot point. The pivot point is determined using the formula (High + Close + Low) / 3, providing a key level around which the market is expected to pivot or change direction.
In addition to the central pivot point, the indicator enhances its utility by incorporating Fibonacci levels. These levels are calculated based on the range from the low to the high of the selected timeframe. For instance, a Fibonacci level like R0.38 would be calculated by adding 38% of the high-low range to the pivot point, giving traders potential resistance levels above the pivot.
Key features of this indicator include:
Timeframe Selection: Users can choose their desired timeframe, such as weekly, daily, etc., for analysis.
Pivot Point Calculation: The indicator calculates the pivot point based on the previous period's high, low, and closing prices within the selected timeframe.
Fibonacci Levels: Adds Fibonacci retracement levels to the pivot point, offering traders additional layers of potential support and resistance based on the natural Fibonacci sequence.
This indicator is particularly useful for traders looking to identify potential turning points in the market and key levels of support and resistance based on historical price action and the Fibonacci sequence, which is widely regarded for its ability to predict market movements.
Example:
Suppose you're analyzing the EUR/USD currency pair using this indicator with a weekly timeframe setting. The previous week's price action showed a high of 1.2100, a low of 1.1900, and the week closed at 1.2000.
Using the formula ( High + Close + Low ) / 3 (High+Close+Low)/3, the pivot point would be calculated as ( 1.2100 + 1.2000 + 1.1900 ) / 3 = 1.2000. Thus, the central pivot point for the current week is at 1.2000.
The range from the low to the high is 1.2100 − 1.1900 = 0.0200 1.2100−1.1900=0.0200.
To calculate a specific Fibonacci level, such as R0.38, you would add 38% of the high-low range to the pivot point: 1.2000 + ( 0.0200 ∗ 0.38 ) = 1.2076 1.2000+(0.0200∗0.38)=1.2076. Thus, the R0.38 Fibonacci resistance level is at 1.2076.
Similarly, you can calculate other Fibonacci levels such as S0.38 (Support level at 38% retracement) by subtracting 38% of the high-low range from the pivot point.
Traders can use the pivot point as a reference for the market's directional bias: prices above the pivot point suggest bullish sentiment, while prices below indicate bearish sentiment. The Fibonacci levels act as potential stepping stones for price movements, offering strategic points for entry, exit, or placing stop-loss orders.
Fake BreakoutThis indicator detect fake breakout on previous day high/low and option previous swing high and low
Rule Detect Fake Breakout On Previous Day High/Low Or Swing high low Fake Breakout -
1) Detect previous day high/low or swing high/low
2)
A) If price revisit on previous day high/swing high look for upside breakout after input
number of candle (1-5) price came back to previous high and breakout happen downside
it show sell because its fake breakout of previous day high or swing high
B) If price revisit on previous day low/swing low look for downside breakout after input
number of candle (1-5) price came back to previous low and breakout upside of previous
day low it show Buy because its fake breakout of previous day low or swing low
Disclaimer -Traders can use this script as a starting point for further customization or as a reference for developing their own trading strategies. It's important to note that past performance is not indicative of future results, and thorough testing and validation are recommended before deploying any trading strategy.
Swing IdentifierThe "Swing Identifier" is a custom Pine Script indicator designed for use in the TradingView platform. It serves to visually identify and mark swing highs and swing lows on a trading chart, which are key concepts in technical analysis. This script is comprehensive and customizable, making it a useful tool for traders looking to pinpoint potential trend reversals and support or resistance areas.
**Key Features of the 'Swing Identifier' Indicator:**
1. **Swing Range Input:**
- This input determines the number of bars to the left and right of the current bar that the script will examine to identify a swing high or low. A larger value will look for swings over a broader range, potentially identifying more significant swings but at the expense of sensitivity.
2. **Swing Strength Input:**
- The swing strength is set as a percentage and is used to filter out insignificant price movements. A swing high or low is only considered valid if the percentage change from the last swing is greater than this input value. This feature helps in avoiding false signals in sideways or less volatile markets.
3. **Use Wicks Option:**
- Users can choose whether to consider the wicks of the candles or just the closing prices in identifying swings. This feature adds flexibility, allowing the script to be tailored to different trading styles and strategies.
4. **Line Color Customization:**
- The color of the lines marking the swings can be customized, enhancing the visual appeal and readability of the chart.
**Operational Mechanics:**
1. **Identification of Swing Highs and Lows:**
- The script uses the `ta.pivothigh` and `ta.pivotlow` functions to identify swing highs and lows. Whether it uses the high/low of the candles or their closing prices is determined by the user's choice in the "Use Wicks" option.
2. **Drawing and Updating Lines:**
- When a new swing high or low is identified, and it meets the percentage change criteria from the previous swing, a line is drawn from the last swing low to the current high (or vice versa). If a new swing high (or low) is identified that is higher (or lower) than the previous one, the old line is deleted, and a new line is drawn.
3. **Swing Update Logic:**
- The script maintains a toggle mechanism to look alternatively for highs and lows. This ensures that it sequentially identifies a high and then a low (or vice versa), which aligns with how actual market swings behave.
**Usage in Trading:**
1. **Identifying Trend Reversals:**
- By marking swing highs and lows, the script helps traders identify potential trend reversals. A break of a swing low in an uptrend or a swing high in a downtrend could signal a change in the prevailing trend.
2. **Support and Resistance:**
- Swing highs and lows often act as levels of support and resistance. Traders can use these levels for setting entry or exit points, stop losses, and take profit orders.
3. **Customization for Strategy:**
- The customizable nature of the script allows traders to adjust the parameters according to their trading strategy, time frame, and asset volatility.
In summary, the "Swing Identifier" is a versatile and customizable tool that aids in visually identifying crucial price swing points, thereby assisting traders in making informed decisions based on technical analysis principles.
Modified Box Plots
Box Plot Concept: The script creates a modified box plot where the central box represents the range within 1 standard deviation from the midpoint (hl2), which is the average of the high and low prices. The whiskers extend to cover a range of 3 standard deviations, providing a visualization of the overall price distribution.
Color Scheme: The color of the modified box plot is determined based on comparisons between the current midpoint (g) and the +/- 1 SD values of the previous candle (i and j ). If g > i , the color is green; if g < j , it's red; otherwise, it's yellow. This color scheme allows users to quickly assess the relationship between the current market conditions and recent price movements. if the mid point price is above/below +/- 1 SD values of the previous candle the price movement is considered as significant.
Plotcandle Function: The plotcandle function is employed to visualize the modified box plot. The color of the box is dynamically determined by the candleColor variable, which reflects the current market state based on the color scheme. The wicks, represented by lines extending from the box, are colored in white.
Explanation of Box and Wicks:
Box (Open and Close): In this modified box plot, the box does not represent traditional open and close prices. Instead, it signifies a range within 1 standard deviation of the midpoint (hl2), providing insight into the typical price variation around the average of the high and low.
Wicks (High and Low): The wicks extend from the box to cover a range of 3 standard deviations from the midpoint (hl2). They do not correspond to the actual high and low prices but serve as a visualization of potential outliers in the price distribution. The actual high and low prices are also plotted as green and red dots when the actual high and low prices fall outside the +/- 3SD wicks (whiskers) and also indicate the prices does not fit the distribution based on the recent price volatility.
In summary, this modified box plot offers a unique perspective on price distribution by considering standard deviations from the midpoint. The color scheme aids in quickly assessing market conditions, and the wicks provide insights into the potential presence of outliers. It's essential to understand that the box and wicks do not represent traditional open, close, high, and low prices but offer a different way to visualize and interpret intraday price movements.
Step by step explanation
Here's the step-by-step explanation:
a = ta.highest(high, 7): Calculates the highest high in the last 7 bars.
b = ta.lowest(low, 7): Calculates the lowest low in the last 7 bars.
c = ta.stdev(hl2, 7): Calculates the standard deviation of the average of high and low prices (hl2) over the last 7 bars.
d = (a - b) / c: Computes a scaling factor d based on the highest, lowest, and standard deviation. This factor is used to scale the intraday range in the next steps.
e = (high - low): Calculates the intraday range of the candle.
f = e / d: Estimates the standard deviation (f) of the intraday candle price using the scaling factor d.
g = hl2: Defines the intraday midpoint of the candle, which is the average of high and low prices.
i = g + 1 * f, j = g - 1 * f, k = g + 3 * f, l = g - 3 * f: Calculate values representing coverage of +1 SD, -1 SD, +3 SD, and -3 SD from the intraday midpoint.
The script utilizes historical high, low, and standard deviation values to dynamically estimate the standard deviation of the intraday candle, providing a measure of volatility for the current price range. This estimation is then used to construct a modified box plot around the intraday midpoint.
In addition I have included a 7 period hull moving average just to see the overall trend direction.
Conclusion:
The "Nasan Modified Box Plots" indicator on TradingView is a dynamic visualization tool that provides insights into the distribution of price ranges over a specified period. It adapts to changing market conditions by incorporating historical data in the calculation of a scaling factor (d). The indicator constructs a modified box plot, where the size of the box and the whiskers is determined by recent volatility
NSDT Lattice WebThis script creates a "web" by connecting different points of candles. All configurable by the trader.
There are 4 basic parts to a candle:
Open, High, Low, and Close
With this script, you can connect any point of one candle in the past to any point of another current candle.
For example:
High to High, High to Low, High to Open, High to close
Low to High, Low to Low, Low to Open, Low to Close
Open to High, Open to Low, Open to Open, Open to Close
Close to High, Close to Low, Close to Open, Close to Close
The script will change the line colors based on whether the current plot is higher or lower than the previous plot.
Try out different connection points to see what works for you. Connecting High to High and Low to Low, might easily show you when the market is making higher highs or lower lows, indicating a potential movement.
Run it on replay at a higher speed and see how it may potentially help identify area of congestion or trends.
Bar metrics / quantifytools— Overview
Rather than eyeball evaluating bullishness/bearishness in any given bar, bar metrics allow a quantified approach using three basic fundamental data points: relative close, relative volatility and relative volume. These data points are visualized in a discreet data dashboard form, next to all real-time bars. Each value also has a dot in front, representing color coded extremes in the values.
Relative close represents position of bar's close relative to high and low, high of bar being 100% and low of bar being 0%. Relative close indicates strength of bulls/bears in a given bar, the higher the better for bulls, the lower the better for bears. Relative volatility (bar range, high - low) and relative volume are presented in a form of a multiplier, relative to their respective moving averages (SMA 20). A value of 1x indicates volume/volatility being on par with moving average, 2x indicates volume/volatility being twice as much as moving average and so on. Relative volume and volatility can be used for measuring general market participant interest, the "weight of the bar" as it were.
— Features
Users can gauge past bar metrics using lookback via input menu. Past bars, especially recent ones, are helpful for giving context for current bar metrics. Lookback bars are highlighted on the chart using a yellow box and metrics presented on the data dashboard with lookback symbols:
To inspect bar metric data and its implications, users can highlight bars with specified bracket values for each metric:
When bar highlighter is toggled on and desired bar metric values set, alert for the specified combination can be toggled on via alert menu. Note that bar highlighter must be enabled in order for alerts to function.
— Visuals
Bar metric dots are gradient colored the following way:
Relative volatility & volume
0x -> 1x / Neutral (white) -> Light (yellow)
1x -> 1.7x / Light (yellow) -> Medium (orange)
1.7x -> 2.4x / Medium (orange) -> Heavy (red)
Relative close
0% -> 25% / Heavy bearish (red) -> Light bearish (dark red)
25% -> 45% / Light bearish (dark red) -> Neutral (white)
45% - 55% / Neutral (white)
55% -> 75% / Neutral (white) -> Light bullish (dark green)
75% -> 100% / Light bullish (dark green) -> Heavy bullish (green)
All colors can be adjusted via input menu. Label size, label distance from bar (offset) and text format (regular/stealth) can be adjusted via input menu as well:
— Practical guide
As interpretation of bar metrics is highly contextual, it is especially important to use other means in conjunction with the metrics. Levels, oscillators, moving averages, whatever you have found useful for your process. In short, relative close indicates directional bias and relative volume/volatility indicates "weight" of directional bias.
General interpretation
High relative close, low relative volume/volatility = mildly bullish, bias up/consolidation
High relative close, medium relative volume/volatility = bullish, bias up
High relative close, high relative volume/volatility = exuberantly bullish, bias up/down depending on context
Medium relative close, low relative volume/volatility = noise, no bias
Medium relative close, medium to high relative volume/volatility = indecision, further evidence needed to evaluate bias
Low relative close, low relative volume/volatility = mildly bearish, bias down/consolidation
Low relative close, medium relative volume/volatility = bearish, bias down
Low relative close, high relative volume/volatility = exuberantly bearish, bias down/up depending on context
Nuances & considerations
As to relative close, it's important to note that each bar is a trading range when viewed on a lower timeframe, ES 1W vs. ES 4H:
When relative close is high, bulls were able to push price to range high by the time of close. When relative close is low, bears were able to push price to range low by the time of close. In other words, bulls/bears were able to gain the upper hand over a given trading range, hinting strength for the side that made the final push. When relative close is around middle range (40-60%), it can be said neither side is clearly dominating the range, hinting neutral/indecision bias from a relative close perspective.
As to relative volume/volatility, low values (less than ~0.7x) imply bar has low market participant interest and therefore is likely insignificant, as it is "lacking weight". Values close to or above 1x imply meaningful market participant interest, whereas values well above 1x (greater than ~1.3x) imply exuberance. This exuberance can manifest as initiation (beginning of a trend) or as exhaustion (end of a trend):
VisibleChart█ OVERVIEW
This library is a Pine programmer’s tool containing functions that return values calculated from the range of visible bars on the chart.
This is now possible in Pine Script™ thanks to the recently-released chart.left_visible_bar_time and chart.right_visible_bar_time built-ins, which return the opening time of the leftmost and rightmost bars on the chart. These values update as traders scroll or zoom their charts, which gives way to a class of indicators that can dynamically recalculate and draw visuals on visible bars only, as users scroll or zoom their charts. We hope this library's functions help you make the most of the world of possibilities these new built-ins provide for Pine scripts.
For an example of a script using this library, have a look at the Chart VWAP indicator.
█ CONCEPTS
Chart properties
The new chart.left_visible_bar_time and chart.right_visible_bar_time variables return the opening time of the leftmost and rightmost bars on the chart. They are only two of many new built-ins in the `chart.*` namespace. See this blog post for more information, or look them up by typing "chart." in the Pine Script™ Reference Manual .
Dynamic recalculation of scripts on visible bars
Any script using chart.left_visible_bar_time or chart.right_visible_bar_time acquires a unique property, which triggers its recalculation when traders scroll or zoom their charts in such a way that the range of visible bars on the chart changes. This library's functions use the two recent built-ins to derive various values from the range of visible bars.
Designing your scripts for dynamic recalculation
For the library's functions to work correctly, they must be called on every bar. For reliable results, assign their results to global variables and then use the variables locally where needed — not the raw function calls.
Some functions like `barIsVisible()` or `open()` will return a value starting on the leftmost visible bar. Others such as `high()` or `low()` will also return a value starting on the leftmost visible bar, but their correct value can only be known on the rightmost visible bar, after all visible bars have been analyzed by the script.
You can plot values as the script executes on visible bars, but efficient code will, when possible, create resource-intensive labels, lines or tables only once in the global scope using var , and then use the setter functions to modify their properties on the last bar only. The example code included in this library uses this method.
Keep in mind that when your script uses chart.left_visible_bar_time or chart.right_visible_bar_time , your script will recalculate on all bars each time the user scrolls or zooms their chart. To provide script users with the best experience you should strive to keep calculations to a minimum and use efficient code so that traders are not always waiting for your script to recalculate every time they scroll or zoom their chart.
Another aspect to consider is the fact that the rightmost visible bar will not always be the last bar in the dataset. When script users scroll back in time, a large portion of the time series the script calculates on may be situated after the rightmost visible bar. We can never assume the rightmost visible bar is also the last bar of the time series. Use `barIsVisible()` to restrict calculations to visible bars, but also consider that your script can continue to execute past them.
Look first. Then leap.
█ FUNCTIONS
The library contains the following functions:
barIsVisible()
Condition to determine if a given bar is within the users visible time range.
Returns: (bool) True if the the calling bar is between the `chart.left_visible_bar_time` and the `chart.right_visible_bar_time`.
high()
Determines the value of the highest `high` in visible bars.
Returns: (float) The maximum high value of visible chart bars.
highBarIndex()
Determines the `bar_index` of the highest `high` in visible bars.
Returns: (int) The `bar_index` of the `high()`.
highBarTime()
Determines the bar time of the highest `high` in visible bars.
Returns: (int) The `time` of the `high()`.
low()
Determines the value of the lowest `low` in visible bars.
Returns: (float) The minimum low value of visible chart bars.
lowBarIndex()
Determines the `bar_index` of the lowest `low` in visible bars.
Returns: (int) The `bar_index` of the `low()`.
lowBarTime()
Determines the bar time of the lowest `low` in visible bars.
Returns: (int) The `time` of the `low()`.
open()
Determines the value of the opening price in the visible chart time range.
Returns: (float) The `open` of the leftmost visible chart bar.
close()
Determines the value of the closing price in the visible chart time range.
Returns: (float) The `close` of the rightmost visible chart bar.
leftBarIndex()
Determines the `bar_index` of the leftmost visible chart bar.
Returns: (int) A `bar_index`.
rightBarIndex()
Determines the `bar_index` of the rightmost visible chart bar.
Returns: (int) A `bar_index`
bars()
Determines the number of visible chart bars.
Returns: (int) The number of bars.
volume()
Determines the sum of volume of all visible chart bars.
Returns: (float) The cumulative sum of volume.
ohlcv()
Determines the open, high, low, close, and volume sum of the visible bar time range.
Returns: ( ) A tuple of the OHLCV values for the visible chart bars. Example: open is chart left, high is the highest visible high, etc.
chartYPct(pct)
Determines a price level as a percentage of the visible bar price range, which depends on the chart's top/bottom margins in "Settings/Appearance".
Parameters:
pct : (series float) Percentage of the visible price range (50 is 50%). Negative values are allowed.
Returns: (float) A price level equal to the `pct` of the price range between the high and low of visible chart bars. Example: 50 is halfway between the visible high and low.
chartXTimePct(pct)
Determines a time as a percentage of the visible bar time range.
Parameters:
pct : (series float) Percentage of the visible time range (50 is 50%). Negative values are allowed.
Returns: (float) A time in UNIX format equal to the `pct` of the time range from the `chart.left_visible_bar_time` to the `chart.right_visible_bar_time`. Example: 50 is halfway from the leftmost visible bar to the rightmost.
chartXIndexPct(pct)
Determines a `bar_index` as a percentage of the visible bar time range.
Parameters:
pct : (series float) Percentage of the visible time range (50 is 50%). Negative values are allowed.
Returns: (float) A time in UNIX format equal to the `pct` of the time range from the `chart.left_visible_bar_time` to the `chart.right_visible_bar_time`. Example: 50 is halfway from the leftmost visible bar to the rightmost.
whenVisible(src, whenCond, length)
Creates an array containing the `length` last `src` values where `whenCond` is true for visible chart bars.
Parameters:
src : (series int/float) The source of the values to be included.
whenCond : (series bool) The condition determining which values are included. Optional. The default is `true`.
length : (simple int) The number of last values to return. Optional. The default is all values.
Returns: (float ) The array ID of the accumulated `src` values.
avg(src)
Gathers values of the source over visible chart bars and averages them.
Parameters:
src : (series int/float) The source of the values to be averaged. Optional. Default is `close`.
Returns: (float) A cumulative average of values for the visible time range.
median(src)
Calculates the median of a source over visible chart bars.
Parameters:
src : (series int/float) The source of the values. Optional. Default is `close`.
Returns: (float) The median of the `src` for the visible time range.
vVwap(src)
Calculates a volume-weighted average for visible chart bars.
Parameters:
src : (series int/float) Source used for the VWAP calculation. Optional. Default is `hlc3`.
Returns: (float) The VWAP for the visible time range.
coates moving averages (cma)This indicator uses three moving averages:
2 period low simple ma
2 period high simple ma
9 period least squares ma
The trend is determined by the angle of the moving averages, current close relative the the 9 least squares ma (lsm) and the current close relative to the prior two periods high and low.
When there are consecutive closes inside the prior two candles high and low then a range is signaled:
In ranges the buy zone is between the lowest low and the lowest close of the current range. The sell zone is between the highest high and the highest close. The zones are adjusted as long as the new close is within the prior two candles range:
When price closes above the 2 high ma and the 9 lsm then a bull trend is signaled if all moving averages are angled upward (as seen at #4 in the chart above and #1 the chart below ). If the 9 lsm and / or the 2 low ma continue to angle downward, following a close above the 2 high ma and 9 lsm, then a prolonged range or reversal is expected (#2 in the chart below):
During a bull trend the buy zone is between the 2 low ma and the 9 lsm. The profit target is the 2 high ma:
During dip buying opportunities price should resist closing below the 9 lsm. If there is one close below the 9 lsm then it is a canary in the coalmine that tells us to proceed with caution. This will often signal a range, based on the conditions outlined above. To avoid a prolonged range, or reversal, price needs to immediately react in the direction of the prevailing trend:
If the moving averages are angled down and the most recent close is below the 2 low ma and 9 lsm then trend is fully bearish:
During a bear trend the short zone is between the 2 high ma and 9 lsm. The profit target is the 2 low ma:
When the 2 high ma angles down and the 2 low ma angles up while price closes inside both mas then it indicates a cma squeeze:
Volatility is expected in the direction of the breakout following the squeeze. In this situation traps / shakeouts are common. If there is a wick outside the cma, with a close inside, then it indicates a trap / shakeout. If there is a close outside the 2 high / low ma then it signals a breakout.
A trend is considered balanced when the 9 lsm is roughly equidistant from the 2 low and 2 high mas. If the 9 lsm crosses the 2 high or 2 low ma then it signals exhaustion / imbalance.
For a stop loss I use the prior three periods low, for bull trends, and the prior three periods high for bear trends. I would expect other reliable stops, such as the parabolic sar or bill williams fractal, to be effective as well. The default moving averages should be very effective on all timeframes and assets classes, however this indicator was developed for bitcoin with a focus on higher timeframes such as the 4h, daily and weekly.
As with any other technical indicator there will be bad signals. Proceed with caution and never risk more than you are willing to lose.
Market Electromagnetic Field [The_lurker]Market Electromagnetic Field
An innovative analytical indicator that presents a completely new model for understanding market dynamics, inspired by the laws of electromagnetic physics — but it's not a rhetorical metaphor, rather a complete mathematical system.
Unlike traditional indicators that focus on price or momentum, this indicator portrays the market as a closed physical system, where:
⚡ Candles = Electric charges (positive at bullish close, negative at bearish)
⚡ Buyers and Sellers = Two opposing poles where pressure accumulates
⚡ Market tension = Voltage difference between the poles
⚡ Price breakout = Electrical discharge after sufficient energy accumulation
█ Core Concept
Markets don't move randomly, but follow a clear physical cycle:
Accumulation → Tension → Discharge → Stabilization → New Accumulation
When charges accumulate (through strong candles with high volume) and exceed a certain "electrical capacitance" threshold, the indicator issues a "⚡ DISCHARGE IMMINENT" alert — meaning a price explosion is imminent, giving the trader an opportunity to enter before the move begins.
█ Competitive Advantage
- Predictive forecasting (not confirmatory after the event)
- Smart multi-layer filtering reduces false signals
- Animated 3D visual representation makes reading price conditions instant and intuitive — without need for number analysis
█ Theoretical Physical Foundation
The indicator doesn't use physical terms for decoration, but applies mathematical laws with precise market adjustments:
⚡ Coulomb's Law
Physics: F = k × (q₁ × q₂) / r²
Market: Field Intensity = 4 × norm_positive × norm_negative
Peaks at equilibrium (0.5 × 0.5 × 4 = 1.0), and decreases at dominance — because conflict increases at parity.
⚡ Ohm's Law
Physics: V = I × R
Market: Voltage = norm_positive − norm_negative
Measures balance of power:
- +1 = Absolute buying dominance
- −1 = Absolute selling dominance
- 0 = Balance
⚡ Capacitance
Physics: C = Q / V
Market: Capacitance = |Voltage| × Field Intensity
Represents stored energy ready for discharge — increases with bias combined with high interaction.
⚡ Electrical Discharge
Physics: Occurs when exceeding insulation threshold
Market: Discharge Probability = min(Capacitance / Discharge Threshold, 1.0)
When ≥ 0.9: "⚡ DISCHARGE IMMINENT"
📌 Key Note:
Maximum capacitance doesn't occur at absolute dominance (where field intensity = 0), nor at perfect balance (where voltage = 0), but at moderate bias (±30–50%) with high interaction (field intensity > 25%) — i.e., in moments of "pressure before breakout".
█ Detailed Calculation Mechanism
⚡ Phase 1: Candle Polarity
polarity = (close − open) / (high − low)
- +1.0: Complete bullish candle (Bullish Marubozu)
- −1.0: Complete bearish candle (Bearish Marubozu)
- 0.0: Doji (no decision)
- Intermediate values: Represent the ratio of candle body to its range — reducing the effect of long-shadow candles
⚡ Phase 2: Volume Weight
vol_weight = volume / SMA(volume, lookback)
A candle with 150% of average volume = 1.5x stronger charge
⚡ Phase 3: Adaptive Factor
adaptive_factor = ATR(lookback) / SMA(ATR, lookback × 2)
- In volatile markets: Increases sensitivity
- In quiet markets: Reduces noise
- Always recommended to keep it enabled
⚡ Phase 4–6: Charge Accumulation and Normalization
Charges are summed over lookback candles, then ratios are normalized:
norm_positive = positive_charge / total_charge
norm_negative = negative_charge / total_charge
So that: norm_positive + norm_negative = 1 — for easier comparison
⚡ Phase 7: Field Calculations
voltage = norm_positive − norm_negative
field_intensity = 4 × norm_positive × norm_negative × field_sensitivity
capacitance = |voltage| × field_intensity
discharge_prob = min(capacitance / discharge_threshold, 1.0)
█ Settings
⚡ Electromagnetic Model
Lookback Period
- Default: 20
- Range: 5–100
- Recommendations:
- Scalping: 10–15
- Day Trading: 20
- Swing: 30–50
- Investing: 50–100
Discharge Threshold
- Default: 0.7
- Range: 0.3–0.95
- Recommendations:
- Speed + Noise: 0.5–0.6
- Balance: 0.7
- High Accuracy: 0.8–0.95
Field Sensitivity
- Default: 1.0
- Range: 0.5–2.0
- Recommendations:
- Amplify Conflict: 1.2–1.5
- Natural: 1.0
- Calm: 0.5–0.8
Adaptive Mode
- Default: Enabled
- Always keep it enabled
🔬 Dynamic Filters
All enabled filters must pass for discharge signal to appear.
Volume Filter
- Condition: volume > SMA(volume) × vol_multiplier
- Function: Excludes "weak" candles not supported by volume
- Recommendation: Enabled (especially for stocks and forex)
Volatility Filter
- Condition: STDEV > SMA(STDEV) × 0.5
- Function: Ignores sideways stagnation periods
- Recommendation: Always enabled
Trend Filter
- Condition: Voltage alignment with fast/slow EMA
- Function: Reduces counter-trend signals
- Recommendation: Enabled for swing/investing only
Volume Threshold
- Default: 1.2
- Recommendations:
- 1.0–1.2: High sensitivity
- 1.5–2.0: Exclusive to high volume
🎨 Visual Settings
Settings improve visual reading experience — don't affect calculations.
Scale Factor
- Default: 600
- Higher = Larger scene (200–1200)
Horizontal Shift
- Default: 180
- Horizontal shift to the left — to focus on last candle
Pole Size
- Default: 60
- Base sphere size (30–120)
Field Lines
- Default: 8
- Number of field lines (4–16) — 8 is ideal balance
Colors
- Green/Red/Blue/Orange
- Fully customizable
█ Visual Representation: A Visual Language for Diagnosing Price Conditions
✨ Design Philosophy
The representation isn't "decoration", but a complete cognitive model — each element carries information, and element interaction tells a complete story.
The brain perceives changes in size, color, and movement 60,000 times faster than reading numbers — so you can "sense" the change before your eye finishes scanning.
═════════════════════════════════════════════════════════════
🟢 Positive Pole (Green Sphere — Left)
═════════════════════════════════════════════════════════════
What does it represent?
Active buying pressure accumulation — not just an uptrend, but real demand force supported by volume and volatility.
● Dynamic Size
Size = pole_size × (0.7 + norm_positive × 0.6)
- 70% of base size = No significant charge
- 130% of base size = Complete dominance
- The larger the sphere: Greater buyer dominance, higher probability of bullish continuation
Size Interpretation:
- Large sphere (>55%): Strong buying pressure — Buyers dominate
- Medium sphere (45–55%): Relative balance with buying bias
- Small sphere (<45%): Weak buying pressure — Sellers dominate
● Lighting and Transparency
- 20% transparency (when Bias = +1): Pole currently active — Bullish direction
- 50% transparency (when Bias ≠ +1): Pole inactive — Not the prevailing direction
Lighting = Current activity, while Size = Historical accumulation
● Pulsing Inner Glow
A smaller sphere pulses automatically when Bias = +1:
inner_pulse = 0.4 + 0.1 × sin(anim_time × 3)
Symbolizes continuity of buy order flow — not static dominance.
● Orbital Rings
Two rings rotating at different speeds and directions:
- Inner: 1.3× sphere size — Direct influence range
- Outer: 1.6× sphere size — Extended influence range
Represent "influence zone" of buyers:
- Continuous rotation = Stability and momentum
- Slowdown = Momentum exhaustion
● Percentage
Displayed below sphere: norm_positive × 100
- >55% = Clear dominance
- 45–55% = Balance
- <45% = Weakness
═════════════════════════════════════════════════════════════
🔴 Negative Pole (Red Sphere — Right)
═════════════════════════════════════════════════════════════
What does it represent?
Active selling pressure accumulation — whether cumulative selling (smart distribution) or panic selling (position liquidation).
● Visual Dynamics
Same size, lighting, and inner glow mechanism — but in red.
Key Difference:
- Rotation is reversed (counter-clockwise)
- Visually distinguishes "buy flow" from "sell flow"
- Allows reading direction at a glance — even for colorblind users
📌 Pole Reading Summary:
🟢 Large + Bright green sphere = Active buying force
🔴 Large + Bright red sphere = Active selling force
🟢🔴 Both large but dim = Energy accumulation (before discharge)
⚪ Both small = Stagnation / Low liquidity
═════════════════════════════════════════════════════════════
🔵 Field Lines (Curved Blue Lines)
═════════════════════════════════════════════════════════════
What do they represent?
Energy flow paths between poles — the arena where price battle is fought.
● Number of Lines
4–16 lines (Default: 8)
More lines: Greater sense of "interaction density"
● Arc Height
arc_h = (i − half_lines) × 15 × field_intensity × 2
- High field intensity = Highly elevated lines (like waves)
- Low intensity = Nearly straight lines
● Oscillating Transparency
transp = 30 + phase × 40
where phase = sin(anim_time × 2 + i × 0.5) × 0.5 + 0.5
Creates illusion of "flowing current" — not static lines
● Asymmetric Curvature
- Upper lines curve upward
- Lower lines curve downward
- Adds 3D depth and shows "pressure" direction
⚡ Pro Tip:
When you see lines suddenly "contract" (straighten), while both spheres are large — this is an early indicator of impending discharge, because the interaction is losing its flexibility.
═════════════════════════════════════════════════════════════
⚪ Moving Particles
═════════════════════════════════════════════════════════════
What do they represent?
Real liquidity flow in the market — who's driving price right now.
● Number and Movement
- 6 particles covering most field lines
- Move sinusoidally along the arc:
t = (sin(phase_val) + 1) / 2
- High speed = High trading activity
- Clustering at a pole = That side's control
● Color Gradient
From green (at positive pole) to red (at negative)
Shows "energy transformation":
- Green particle = Pure buying energy
- Orange particle = Conflict zone
- Red particle = Pure selling energy
📌 How to Read Them?
- Moving left to right (🟢 → 🔴): Buy flow → Bullish push
- Moving right to left (🔴 → 🟢): Sell flow → Bearish push
- Clustered in middle: Balanced conflict — Wait for breakout
═════════════════════════════════════════════════════════════
🟠 Discharge Zone (Orange Glow — Center)
═════════════════════════════════════════════════════════════
What does it represent?
Point of stored energy accumulation not yet discharged — heart of the early warning system.
● Glow Stages
Initial Warning (discharge_prob > 0.3):
- Dim orange circle (70% transparency)
- Meaning: Watch, don't enter yet
High Tension (discharge_prob ≥ 0.7):
- Stronger glow + "⚠️ HIGH TENSION" text
- Meaning: Prepare — Set pending orders
Imminent Discharge (discharge_prob ≥ 0.9):
- Bright glow + "⚡ DISCHARGE IMMINENT" text
- Meaning: Enter with direction (after candle confirmation)
● Layered Glow Effect (Glow Layering)
3 concentric circles with increasing transparency:
- Inner: 20%
- Middle: 35%
- Outer: 50%
Result: Realistic aura resembling actual electrical discharge.
📌 Why in the Center?
Because discharge always starts from the relative balance zone — where opposing pressures meet.
═════════════════════════════════════════════════════════════
📊 Voltage Meter (Bottom of Scene)
═════════════════════════════════════════════════════════════
What does it represent?
Simplified numeric indicator of voltage difference — for those who prefer numerical reading.
● Components
- Gray bar: Full range (−100% to +100%)
- Green fill: Positive voltage (extends right)
- Red fill: Negative voltage (extends left)
- Lightning symbol (⚡): Above center — reminder it's an "electrical gauge"
- Text value: Like "+23.4%" — in direction color
● Voltage Reading Interpretation
+50% to +100%:
Overwhelming buying dominance — Beware of saturation, may precede correction
+20% to +50%:
Strong buying dominance — Suitable for buying with trend
+5% to +20%:
Slight bullish bias — Wait for additional confirmation
−5% to +5%:
Balance/Neutral — Avoid entry or wait for breakout
−5% to −20%:
Slight bearish bias — Wait for confirmation
−20% to −50%:
Strong selling dominance — Suitable for selling with trend
−50% to −100%:
Overwhelming selling dominance — Beware of saturation, may precede bounce
═════════════════════════════════════════════════════════════
📈 Field Strength Indicator (Top of Scene)
═════════════════════════════════════════════════════════════
What it displays: "Field: XX.X%"
Meaning: Strength of conflict between buyers and sellers.
● Reading Interpretation
0–5%:
- Appearance: Nearly straight lines, transparent
- Meaning: Complete control by one side
- Strategy: Trend Following
5–15%:
- Appearance: Slight curvature
- Meaning: Clear direction with light resistance
- Strategy: Enter with trend
15–25%:
- Appearance: Medium curvature, clear lines
- Meaning: Balanced conflict
- Strategy: Range trading or waiting
25–35%:
- Appearance: High curvature, clear density
- Meaning: Strong conflict, high uncertainty
- Strategy: Volatility trading or prepare for discharge
35%+:
- Appearance: Very high lines, strong glow
- Meaning: Peak tension
- Strategy: Best discharge opportunities
📌 Golden Relationship:
Highest discharge probability when:
Field Strength (25–35%) + Voltage (±30–50%) + High Volume
← This is the "red zone" to monitor carefully.
█ Comprehensive Visual Reading
To read market condition at a glance, follow this sequence:
Step 1: Which sphere is larger?
- 🟢 Green larger ← Dominant buying pressure
- 🔴 Red larger ← Dominant selling pressure
- Equal ← Balance/Conflict
Step 2: Which sphere is bright?
- 🟢 Green bright ← Current bullish direction
- 🔴 Red bright ← Current bearish direction
- Both dim ← Neutral/No clear direction
Step 3: Is there orange glow?
- None ← Discharge probability <30%
- 🟠 Dim glow ← Discharge probability 30–70%
- 🟠 Strong glow with text ← Discharge probability >70%
Step 4: What's the voltage meter reading?
- Strong positive ← Confirms buying dominance
- Strong negative ← Confirms selling dominance
- Near zero ← No clear direction
█ Practical Visual Reading Examples
Example 1: Ideal Buy Opportunity ⚡🟢
- Green sphere: Large and bright with inner pulse
- Red sphere: Small and dim
- Orange glow: Strong with "DISCHARGE IMMINENT" text
- Voltage meter: +45%
- Field strength: 28%
Interpretation: Strong accumulated buying pressure, bullish explosion imminent
Example 2: Ideal Sell Opportunity ⚡🔴
- Green sphere: Small and dim
- Red sphere: Large and bright with inner pulse
- Orange glow: Strong with "DISCHARGE IMMINENT" text
- Voltage meter: −52%
- Field strength: 31%
Interpretation: Strong accumulated selling pressure, bearish explosion imminent
Example 3: Balance/Wait ⚖️
- Both spheres: Approximately equal in size
- Lighting: Both dim
- Orange glow: Strong
- Voltage meter: +3%
- Field strength: 24%
Interpretation: Strong conflict without clear winner, wait for breakout
Example 4: Clear Uptrend (No Discharge) 📈
- Green sphere: Large and bright
- Red sphere: Very small and dim
- Orange glow: None
- Voltage meter: +68%
- Field strength: 8%
Interpretation: Clear buying control, limited conflict, suitable for following bullish trend
Example 5: Potential Buying Saturation ⚠️
- Green sphere: Very large and bright
- Red sphere: Very small
- Orange glow: Dim
- Voltage meter: +88%
- Field strength: 4%
Interpretation: Absolute buying dominance, may precede bearish correction
█ Trading Signals
⚡ DISCHARGE IMMINENT
Appearance Conditions:
- discharge_prob ≥ 0.9
- All enabled filters passed
- Confirmed (after candle close)
Interpretation:
- Very large energy accumulation
- Pressure reached critical level
- Price explosion expected within 1–3 candles
How to Trade:
1. Determine voltage direction:
• Positive = Expect rise
• Negative = Expect fall
2. Wait for confirmation candle:
• For rise: Bullish candle closing above its open
• For fall: Bearish candle closing below its open
3. Entry: With next candle's open
4. Stop Loss: Behind last local low/high
5. Target: Risk/Reward ratio of at least 1:2
✅ Pro Tips:
- Best results when combined with support/resistance levels
- Avoid entry if voltage is near zero (±5%)
- Increase position size when field strength > 30%
⚠️ HIGH TENSION
Appearance Conditions:
- 0.7 ≤ discharge_prob < 0.9
Interpretation:
- Market in energy accumulation state
- Likely strong move soon, but not immediate
- Accumulation may continue or discharge may occur
How to Benefit:
- Prepare: Set pending orders at potential breakouts
- Monitor: Watch following candles for momentum candle
- Select: Don't enter every signal — choose those aligned with overall trend
█ Trading Strategies
📈 Strategy 1: Discharge Trading (Basic)
Principle: Enter at "DISCHARGE IMMINENT" in voltage direction
Steps:
1. Wait for "⚡ DISCHARGE IMMINENT"
2. Check voltage direction (+/−)
3. Wait for confirmation candle in voltage direction
4. Enter with next candle's open
5. Stop loss behind last low/high
6. Target: 1:2 or 1:3 ratio
Very high success rate when following confirmation conditions.
📈 Strategy 2: Dominance Following
Principle: Trade with dominant pole (largest and brightest sphere)
Steps:
1. Identify dominant pole (largest and brightest)
2. Trade in its direction
3. Beware when sizes converge (conflict)
Suitable for higher timeframes (H1+).
📈 Strategy 3: Reversal Hunting
Principle: Counter-trend entry under certain conditions
Conditions:
- High field strength (>30%)
- Extreme voltage (>±40%)
- Divergence with price (e.g., new price high with declining voltage)
⚠️ High risk — Use small position size.
📈 Strategy 4: Integration with Technical Analysis
Strong Confirmation Examples:
- Resistance breakout + Bullish discharge = Excellent buy signal
- Support break + Bearish discharge = Excellent sell signal
- Head & Shoulders pattern + Increasing negative voltage = Pattern confirmation
- RSI divergence + High field strength = Potential reversal
█ Ready Alerts
Bullish Discharge
- Condition: discharge_prob ≥ 0.9 + Positive voltage + All filters
- Message: "⚡ Bullish discharge"
- Use: High probability buy opportunity
Bearish Discharge
- Condition: discharge_prob ≥ 0.9 + Negative voltage + All filters
- Message: "⚡ Bearish discharge"
- Use: High probability sell opportunity
✅ Tip: Use these alerts with "Once Per Bar" setting to avoid repetition.
█ Data Window Outputs
Bias
- Values: −1 / 0 / +1
- Interpretation: −1 = Bearish, 0 = Neutral, +1 = Bullish
- Use: For integration in automated strategies
Discharge %
- Range: 0–100%
- Interpretation: Discharge probability
- Use: Monitor tension progression (e.g., from 40% to 85% in 5 candles)
Field Strength
- Range: 0–100%
- Interpretation: Conflict intensity
- Use: Identify "opportunity window" (25–35% ideal for discharge)
Voltage
- Range: −100% to +100%
- Interpretation: Balance of power
- Use: Monitor extremes (potential buying/selling saturation)
█ Optimal Settings by Trading Style
Scalping
- Timeframe: 1M–5M
- Lookback: 10–15
- Threshold: 0.5–0.6
- Sensitivity: 1.2–1.5
- Filters: Volume + Volatility
Day Trading
- Timeframe: 15M–1H
- Lookback: 20
- Threshold: 0.7
- Sensitivity: 1.0
- Filters: Volume + Volatility
Swing Trading
- Timeframe: 4H–D1
- Lookback: 30–50
- Threshold: 0.8
- Sensitivity: 0.8
- Filters: Volatility + Trend
Position Trading
- Timeframe: D1–W1
- Lookback: 50–100
- Threshold: 0.85–0.95
- Sensitivity: 0.5–0.8
- Filters: All filters
█ Tips for Optimal Use
1. Start with Default Settings
Try it first as is, then adjust to your style.
2. Watch for Element Alignment
Best signals when:
- Clear voltage (>│20%│)
- Moderate–high field strength (15–35%)
- High discharge probability (>70%)
3. Use Multiple Timeframes
- Higher timeframe: Determine overall trend
- Lower timeframe: Time entry
- Ensure signal alignment between frames
4. Integrate with Other Tools
- Support/Resistance levels
- Trend lines
- Candle patterns
- Volume indicators
5. Respect Risk Management
- Don't risk more than 1–2% of account
- Always use stop loss
- Don't enter every signal — choose the best
█ Important Warnings
⚠️ Not for Standalone Use
The indicator is an analytical support tool — don't use it isolated from technical or fundamental analysis.
⚠️ Doesn't Predict the Future
Calculations are based on historical data — Results are not guaranteed.
⚠️ Markets Differ
You may need to adjust settings for each market:
- Forex: Focus on Volume Filter
- Stocks: Add Trend Filter
- Crypto: Lower Threshold slightly (more volatile)
⚠️ News and Events
The indicator doesn't account for sudden news — Avoid trading before/during major news.
█ Unique Features
✅ First Application of Electromagnetism to Markets
Innovative mathematical model — Not just an ordinary indicator
✅ Predictive Detection of Price Explosions
Alerts before the move happens — Not after
✅ Multi-Layer Filtering
4 smart filters reduce false signals to minimum
✅ Smart Volatility Adaptation
Automatically adjusts sensitivity based on market conditions
✅ Animated 3D Visual Representation
Makes reading instant — Even for beginners
✅ High Flexibility
Works on all assets: Stocks, Forex, Crypto, Commodities
✅ Built-in Ready Alerts
No complex setup needed — Ready for immediate use
█ Conclusion: When Art Meets Science
Market Electromagnetic Field is not just an indicator — but a new analytical philosophy.
It's the bridge between:
- Physics precision in describing dynamic systems
- Market intelligence in generating trading opportunities
- Visual psychology in facilitating instant reading
The result: A tool that isn't read — but watched, felt, and sensed.
When you see the green sphere expanding, the glow intensifying, and particles rushing rightward — you're not seeing numbers, you're seeing market energy breathing.
⚠️ Disclaimer:
This indicator is for educational and analytical purposes only. It does not constitute financial, investment, or trading advice. Use it in conjunction with your own strategy and risk management. Neither TradingView nor the developer is liable for any financial decisions or losses.
المجال الكهرومغناطيسي للسوق - Market Electromagnetic Field
مؤشر تحليلي مبتكر يقدّم نموذجًا جديدًا كليًّا لفهم ديناميكيات السوق، مستوحى من قوانين الفيزياء الكهرومغناطيسية — لكنه ليس استعارة بلاغية، بل نظام رياضي متكامل.
على عكس المؤشرات التقليدية التي تُركّز على السعر أو الزخم، يُصوّر هذا المؤشر السوق كـنظام فيزيائي مغلق، حيث:
⚡ الشموع = شحنات كهربائية (موجبة عند الإغلاق الصاعد، سالبة عند الهابط)
⚡ المشتريون والبائعون = قطبان متعاكسان يتراكم فيهما الضغط
⚡ التوتر السوقي = فرق جهد بين القطبين
⚡ الاختراق السعري = تفريغ كهربائي بعد تراكم طاقة كافية
█ الفكرة الجوهرية
الأسواق لا تتحرك عشوائيًّا، بل تخضع لدورة فيزيائية واضحة:
تراكم → توتر → تفريغ → استقرار → تراكم جديد
عندما تتراكم الشحنات (من خلال شموع قوية بحجم مرتفع) وتتجاوز "السعة الكهربائية" عتبة معيّنة، يُصدر المؤشر تنبيه "⚡ DISCHARGE IMMINENT" — أي أن انفجارًا سعريًّا وشيكًا، مما يمنح المتداول فرصة الدخول قبل بدء الحركة.
█ الميزة التنافسية
- تنبؤ استباقي (ليس تأكيديًّا بعد الحدث)
- فلترة ذكية متعددة الطبقات تقلل الإشارات الكاذبة
- تمثيل بصري ثلاثي الأبعاد متحرك يجعل قراءة الحالة السعرية فورية وبديهية — دون حاجة لتحليل أرقام
█ الأساس النظري الفيزيائي
المؤشر لا يستخدم مصطلحات فيزيائية للزينة، بل يُطبّق القوانين الرياضية مع تعديلات سوقيّة دقيقة:
⚡ قانون كولوم (Coulomb's Law)
الفيزياء: F = k × (q₁ × q₂) / r²
السوق: شدة الحقل = 4 × norm_positive × norm_negative
تصل لذروتها عند التوازن (0.5 × 0.5 × 4 = 1.0)، وتنخفض عند الهيمنة — لأن الصراع يزداد عند التكافؤ.
⚡ قانون أوم (Ohm's Law)
الفيزياء: V = I × R
السوق: الجهد = norm_positive − norm_negative
يقيس ميزان القوى:
- +1 = هيمنة شرائية مطلقة
- −1 = هيمنة بيعية مطلقة
- 0 = توازن
⚡ السعة الكهربائية (Capacitance)
الفيزياء: C = Q / V
السوق: السعة = |الجهد| × شدة الحقل
تمثّل الطاقة المخزّنة القابلة للتفريغ — تزداد عند وجود تحيّز مع تفاعل عالي.
⚡ التفريغ الكهربائي (Discharge)
الفيزياء: يحدث عند تجاوز عتبة العزل
السوق: احتمال التفريغ = min(السعة / عتبة التفريغ, 1.0)
عندما ≥ 0.9: "⚡ DISCHARGE IMMINENT"
📌 ملاحظة جوهرية:
أقصى سعة لا تحدث عند الهيمنة المطلقة (حيث شدة الحقل = 0)، ولا عند التوازن التام (حيث الجهد = 0)، بل عند انحياز متوسط (±30–50%) مع تفاعل عالي (شدة حقل > 25%) — أي في لحظات "الضغط قبل الاختراق".
█ آلية الحساب التفصيلية
⚡ المرحلة 1: قطبية الشمعة
polarity = (close − open) / (high − low)
- +1.0: شمعة صاعدة كاملة (ماروبوزو صاعد)
- −1.0: شمعة هابطة كاملة (ماروبوزو هابط)
- 0.0: دوجي (لا قرار)
- القيم الوسيطة: تمثّل نسبة جسم الشمعة إلى مداها — مما يقلّل تأثير الشموع ذات الظلال الطويلة
⚡ المرحلة 2: وزن الحجم
vol_weight = volume / SMA(volume, lookback)
شمعة بحجم 150% من المتوسط = شحنة أقوى بـ 1.5 مرة
⚡ المرحلة 3: معامل التكيف (Adaptive Factor)
adaptive_factor = ATR(lookback) / SMA(ATR, lookback × 2)
- في الأسواق المتقلبة: يزيد الحساسية
- في الأسواق الهادئة: يقلل الضوضاء
- يوصى دائمًا بتركه مفعّلًا
⚡ المرحلة 4–6: تراكم وتوحيد الشحنات
تُجمّع الشحنات على lookback شمعة، ثم تُوحّد النسب:
norm_positive = positive_charge / total_charge
norm_negative = negative_charge / total_charge
بحيث: norm_positive + norm_negative = 1 — لتسهيل المقارنة
⚡ المرحلة 7: حسابات الحقل
voltage = norm_positive − norm_negative
field_intensity = 4 × norm_positive × norm_negative × field_sensitivity
capacitance = |voltage| × field_intensity
discharge_prob = min(capacitance / discharge_threshold, 1.0)
█ الإعدادات
⚡ Electromagnetic Model
Lookback Period
- الافتراضي: 20
- النطاق: 5–100
- التوصيات:
- المضاربة: 10–15
- اليومي: 20
- السوينغ: 30–50
- الاستثمار: 50–100
Discharge Threshold
- الافتراضي: 0.7
- النطاق: 0.3–0.95
- التوصيات:
- سرعة + ضوضاء: 0.5–0.6
- توازن: 0.7
- دقة عالية: 0.8–0.95
Field Sensitivity
- الافتراضي: 1.0
- النطاق: 0.5–2.0
- التوصيات:
- تضخيم الصراع: 1.2–1.5
- طبيعي: 1.0
- تهدئة: 0.5–0.8
Adaptive Mode
- الافتراضي: مفعّل
- أبقِه دائمًا مفعّلًا
🔬 Dynamic Filters
يجب اجتياز جميع الفلاتر المفعّلة لظهور إشارة التفريغ.
Volume Filter
- الشرط: volume > SMA(volume) × vol_multiplier
- الوظيفة: يستبعد الشموع "الضعيفة" غير المدعومة بحجم
- التوصية: مفعّل (خاصة للأسهم والعملات)
Volatility Filter
- الشرط: STDEV > SMA(STDEV) × 0.5
- الوظيفة: يتجاهل فترات الركود الجانبي
- التوصية: مفعّل دائمًا
Trend Filter
- الشرط: توافق الجهد مع EMA سريع/بطيء
- الوظيفة: يقلل الإشارات المعاكسة للاتجاه العام
- التوصية: مفعّل للسوينغ/الاستثمار فقط
Volume Threshold
- الافتراضي: 1.2
- التوصيات:
- 1.0–1.2: حساسية عالية
- 1.5–2.0: حصرية للحجم العالي
🎨 Visual Settings
الإعدادات تُحسّن تجربة القراءة البصرية — لا تؤثر على الحسابات.
Scale Factor
- الافتراضي: 600
- كلما زاد: المشهد أكبر (200–1200)
Horizontal Shift
- الافتراضي: 180
- إزاحة أفقيّة لليسار — ليركّز على آخر شمعة
Pole Size
- الافتراضي: 60
- حجم الكرات الأساسية (30–120)
Field Lines
- الافتراضي: 8
- عدد خطوط الحقل (4–16) — 8 توازن مثالي
الألوان
- أخضر/أحمر/أزرق/برتقالي
- قابلة للتخصيص بالكامل
█ التمثيل البصري: لغة بصرية لتشخيص الحالة السعرية
✨ الفلسفة التصميمية
التمثيل ليس "زينة"، بل نموذج معرفي متكامل — كل عنصر يحمل معلومة، وتفاعل العناصر يروي قصة كاملة.
العقل يدرك التغيير في الحجم، اللون، والحركة أسرع بـ 60,000 مرة من قراءة الأرقام — لذا يمكنك "الإحساس" بالتغير قبل أن تُنهي العين المسح.
═════════════════════════════════════════════════════════════
🟢 القطب الموجب (الكرة الخضراء — يسار)
═════════════════════════════════════════════════════════════
ماذا يمثّل؟
تراكم ضغط الشراء النشط — ليس مجرد اتجاه صاعد، بل قوة طلب حقيقية مدعومة بحجم وتقلّب.
● الحجم المتغير
حجم = pole_size × (0.7 + norm_positive × 0.6)
- 70% من الحجم الأساسي = لا شحنة تُذكر
- 130% من الحجم الأساسي = هيمنة تامة
- كلما كبرت الكرة: زاد تفوّق المشترين، وارتفع احتمال الاستمرار الصعودي
تفسير الحجم:
- كرة كبيرة (>55%): ضغط شراء قوي — المشترون يسيطرون
- كرة متوسطة (45–55%): توازن نسبي مع ميل للشراء
- كرة صغيرة (<45%): ضعف ضغط الشراء — البائعون يسيطرون
● الإضاءة والشفافية
- شفافية 20% (عند Bias = +1): القطب نشط حالياً — الاتجاه صعودي
- شفافية 50% (عند Bias ≠ +1): القطب غير نشط — ليس الاتجاه السائد
الإضاءة = النشاط الحالي، بينما الحجم = التراكم التاريخي
● التوهج الداخلي النابض
كرة أصغر تنبض تلقائيًّا عند Bias = +1:
inner_pulse = 0.4 + 0.1 × sin(anim_time × 3)
يرمز إلى استمرارية تدفق أوامر الشراء — وليس هيمنة جامدة.
● الحلقات المدارية
حلقتان تدوران بسرعات واتجاهات مختلفة:
- الداخلية: 1.3× حجم الكرة — نطاق التأثير المباشر
- الخارجية: 1.6× حجم الكرة — نطاق التأثير الممتد
تمثّل "نطاق تأثير" المشترين:
- الدوران المستمر = استقرار وزخم
- التباطؤ = نفاد الزخم
● النسبة المئوية
تظهر تحت الكرة: norm_positive × 100
- >55% = هيمنة واضحة
- 45–55% = توازن
- <45% = ضعف
═════════════════════════════════════════════════════════════
🔴 القطب السالب (الكرة الحمراء — يمين)
═════════════════════════════════════════════════════════════
ماذا يمثّل؟
تراكم ضغط البيع النشط — سواء كان بيعًا تراكميًّا (التوزيع الذكي) أو بيعًا هستيريًّا (تصفية مراكز).
● الديناميكيات البصرية
نفس آلية الحجم والإضاءة والتوهج الداخلي — لكن باللون الأحمر.
الفرق الجوهري:
- الدوران معكوس (عكس اتجاه عقارب الساعة)
- يُميّز بصريًّا بين "تدفق الشراء" و"تدفق البيع"
- يسمح بقراءة الاتجاه بنظرة واحدة — حتى للمصابين بعَمَى الألوان
📌 ملخص قراءة القطبين:
🟢 كرة خضراء كبيرة + مضيئة = قوة شرائية نشطة
🔴 كرة حمراء كبيرة + مضيئة = قوة بيعية نشطة
🟢🔴 كرتان كبيرتان لكن خافتتان = تراكم طاقة (قبل التفريغ)
⚪ كرتان صغيرتان = ركود / سيولة منخفضة
═════════════════════════════════════════════════════════════
🔵 خطوط الحقل (الخطوط الزرقاء المنحنية)
═════════════════════════════════════════════════════════════
ماذا تمثّل؟
مسارات تدفق الطاقة بين القطبين — أي الساحة التي تُدار فيها المعركة السعرية.
● عدد الخطوط
4–16 خط (الافتراضي: 8)
كلما زاد العدد: زاد إحساس "كثافة التفاعل"
● ارتفاع القوس
arc_h = (i − half_lines) × 15 × field_intensity × 2
- شدة حقل عالية = خطوط شديدة الارتفاع (مثل موجة)
- شدة منخفضة = خطوط شبه مستقيمة
● الشفافية المتذبذبة
transp = 30 + phase × 40
حيث phase = sin(anim_time × 2 + i × 0.5) × 0.5 + 0.5
تخلق وهم "تيّار متدفّق" — وليس خطوطًا ثابتة
● الانحناء غير المتناظر
- الخطوط العلوية تنحني لأعلى
- الخطوط السفلية تنحني لأسفل
- يُضفي عمقًا ثلاثي الأبعاد ويُظهر اتجاه "الضغط"
⚡ تلميح احترافي:
عندما ترى الخطوط "تتقلّص" فجأة (تستقيم)، بينما الكرتان كبيرتان — فهذا مؤشر مبكر على قرب التفريغ، لأن التفاعل بدأ يفقد مرونته.
═════════════════════════════════════════════════════════════
⚪ الجزيئات المتحركة
═════════════════════════════════════════════════════════════
ماذا تمثّل؟
تدفق السيولة الحقيقية في السوق — أي من يدفع السعر الآن.
● العدد والحركة
- 6 جزيئات تغطي معظم خطوط الحقل
- تتحرك جيبيًّا على طول القوس:
t = (sin(phase_val) + 1) / 2
- سرعة عالية = نشاط تداول عالي
- تجمّع عند قطب = سيطرة هذا الطرف
● تدرج اللون
من أخضر (عند القطب الموجب) إلى أحمر (عند السالب)
يُظهر "تحوّل الطاقة":
- جزيء أخضر = طاقة شرائية نقية
- جزيء برتقالي = منطقة صراع
- جزيء أحمر = طاقة بيعية نقية
📌 كيف تقرأها؟
- تحركت من اليسار لليمين (🟢 → 🔴): تدفق شرائي → دفع صعودي
- تحركت من اليمين لليسار (🔴 → 🟢): تدفق بيعي → دفع هبوطي
- تجمّعت في المنتصف: صراع متكافئ — انتظر اختراقًا
═════════════════════════════════════════════════════════════
🟠 منطقة التفريغ (التوهج البرتقالي — المركز)
═════════════════════════════════════════════════════════════
ماذا تمثّل؟
نقطة تراكم الطاقة المخزّنة التي لم تُفرّغ بعد — قلب نظام الإنذار المبكر.
● مراحل التوهج
إنذار أولي (discharge_prob > 0.3):
- دائرة برتقالية خافتة (شفافية 70%)
- المعنى: راقب، لا تدخل بعد
توتر عالي (discharge_prob ≥ 0.7):
- توهج أقوى + نص "⚠️ HIGH TENSION"
- المعنى: استعد — ضع أوامر معلقة
تفريغ وشيك (discharge_prob ≥ 0.9):
- توهج ساطع + نص "⚡ DISCHARGE IMMINENT"
- المعنى: ادخل مع الاتجاه (بعد تأكيد شمعة)
● تأثير التوهج الطبقي (Glow Layering)
3 دوائر متحدة المركز بشفافية متزايدة:
- داخلي: 20%
- وسط: 35%
- خارجي: 50%
النتيجة: هالة (Aura) واقعية تشبه التفريغ الكهربائي الحقيقي.
📌 لماذا في المركز؟
لأن التفريغ يبدأ دائمًا من منطقة التوازن النسبي — حيث يلتقي الضغطان المتعاكسان.
═════════════════════════════════════════════════════════════
📊 مقياس الجهد (أسفل المشهد)
═════════════════════════════════════════════════════════════
ماذا يمثّل؟
مؤشر رقمي مبسّط لفرق الجهد — لمن يفضّل القراءة العددية.
● المكونات
- الشريط الرمادي: النطاق الكامل (−100% إلى +100%)
- التعبئة الخضراء: جهد موجب (تمتد لليمين)
- التعبئة الحمراء: جهد سالب (تمتد لليسار)
- رمز البرق (⚡): فوق المركز — تذكير بأنه "مقياس كهربائي"
- القيمة النصية: مثل "+23.4%" — بلون الاتجاه
● تفسير قراءات الجهد
+50% إلى +100%:
هيمنة شرائية ساحقة — احذر التشبع، قد يسبق تصحيح
+20% إلى +50%:
هيمنة شرائية قوية — مناسب للشراء مع الاتجاه
+5% إلى +20%:
ميل صعودي خفيف — انتظر تأكيدًا إضافيًّا
−5% إلى +5%:
توازن/حياد — تجنّب الدخول أو انتظر اختراقًا
−5% إلى −20%:
ميل هبوطي خفيف — انتظر تأكيدًا
−20% إلى −50%:
هيمنة بيعية قوية — مناسب للبيع مع الاتجاه
−50% إلى −100%:
هيمنة بيعية ساحقة — احذر التشبع، قد يسبق ارتداد
═════════════════════════════════════════════════════════════
📈 مؤشر شدة الحقل (أعلى المشهد)
═════════════════════════════════════════════════════════════
ما يعرضه: "Field: XX.X%"
الدلالة: قوة الصراع بين المشترين والبائعين.
● تفسير القراءات
0–5%:
- المظهر: خطوط مستقيمة تقريبًا، شفافة
- المعنى: سيطرة تامة لأحد الطرفين
- الاستراتيجية: تتبع الترند (Trend Following)
5–15%:
- المظهر: انحناء خفيف
- المعنى: اتجاه واضح مع مقاومة خفيفة
- الاستراتيجية: الدخول مع الاتجاه
15–25%:
- المظهر: انحناء متوسط، خطوط واضحة
- المعنى: صراع متوازن
- الاستراتيجية: تداول النطاق أو الانتظار
25–35%:
- المظهر: انحناء عالي، كثافة واضحة
- المعنى: صراع قوي، عدم يقين عالي
- الاستراتيجية: تداول التقلّب أو الاستعداد للتفريغ
35%+:
- المظهر: خطوط عالية جدًّا، توهج قوي
- المعنى: ذروة التوتر
- الاستراتيجية: أفضل فرص التفريغ
📌 العلاقة الذهبية:
أعلى احتمال تفريغ عندما:
شدة الحقل (25–35%) + جهد (±30–50%) + حجم مرتفع
← هذه هي "المنطقة الحمراء" التي يجب مراقبتها بدقة.
█ قراءة التمثيل البصري الشاملة
لقراءة حالة السوق بنظرة واحدة، اتبع هذا التسلسل:
الخطوة 1: أي كرة أكبر؟
- 🟢 الخضراء أكبر ← ضغط شراء مهيمن
- 🔴 الحمراء أكبر ← ضغط بيع مهيمن
- متساويتان ← توازن/صراع
الخطوة 2: أي كرة مضيئة؟
- 🟢 الخضراء مضيئة ← اتجاه صعودي حالي
- 🔴 الحمراء مضيئة ← اتجاه هبوطي حالي
- كلاهما خافت ← حياد/لا اتجاه واضح
الخطوة 3: هل يوجد توهج برتقالي؟
- لا يوجد ← احتمال تفريغ <30%
- 🟠 توهج خافت ← احتمال تفريغ 30–70%
- 🟠 توهج قوي مع نص ← احتمال تفريغ >70%
الخطوة 4: ما قراءة مقياس الجهد؟
- موجب قوي ← تأكيد الهيمنة الشرائية
- سالب قوي ← تأكيد الهيمنة البيعية
- قريب من الصفر ← لا اتجاه واضح
█ أمثلة عملية للقراءة البصرية
المثال 1: فرصة شراء مثالية ⚡🟢
- الكرة الخضراء: كبيرة ومضيئة مع نبض داخلي
- الكرة الحمراء: صغيرة وخافتة
- التوهج البرتقالي: قوي مع نص "DISCHARGE IMMINENT"
- مقياس الجهد: +45%
- شدة الحقل: 28%
التفسير: ضغط شراء قوي متراكم، انفجار صعودي وشيك
المثال 2: فرصة بيع مثالية ⚡🔴
- الكرة الخضراء: صغيرة وخافتة
- الكرة الحمراء: كبيرة ومضيئة مع نبض داخلي
- التوهج البرتقالي: قوي مع نص "DISCHARGE IMMINENT"
- مقياس الجهد: −52%
- شدة الحقل: 31%
التفسير: ضغط بيع قوي متراكم، انفجار هبوطي وشيك
المثال 3: توازن/انتظار ⚖️
- الكرتان: متساويتان تقريباً في الحجم
- الإضاءة: كلاهما خافت
- التوهج البرتقالي: قوي
- مقياس الجهد: +3%
- شدة الحقل: 24%
التفسير: صراع قوي بدون فائز واضح، انتظر اختراقًا
المثال 4: اتجاه صعودي واضح (لا تفريغ) 📈
- الكرة الخضراء: كبيرة ومضيئة
- الكرة الحمراء: صغيرة جداً وخافتة
- التوهج البرتقالي: لا يوجد
- مقياس الجهد: +68%
- شدة الحقل: 8%
التفسير: سيطرة شرائية واضحة، صراع محدود، مناسب لتتبع الترند الصعودي
المثال 5: تشبع شرائي محتمل ⚠️
- الكرة الخضراء: كبيرة جداً ومضيئة
- الكرة الحمراء: صغيرة جداً
- التوهج البرتقالي: خافت
- مقياس الجهد: +88%
- شدة الحقل: 4%
التفسير: هيمنة شرائية مطلقة، قد يسبق تصحيحاً هبوطياً
█ إشارات التداول
⚡ DISCHARGE IMMINENT (التفريغ الوشيك)
شروط الظهور:
- discharge_prob ≥ 0.9
- اجتياز جميع الفلاتر المفعّلة
- Confirmed (بعد إغلاق الشمعة)
التفسير:
- تراكم طاقة كبير جدًّا
- الضغط وصل لمستوى حرج
- انفجار سعري متوقع خلال 1–3 شموع
كيفية التداول:
1. حدد اتجاه الجهد:
• موجب = توقع صعود
• سالب = توقع هبوط
2. انتظر شمعة تأكيدية:
• للصعود: شمعة صاعدة تغلق فوق افتتاحها
• للهبوط: شمعة هابطة تغلق تحت افتتاحها
3. الدخول: مع افتتاح الشمعة التالية
4. وقف الخسارة: وراء آخر قاع/قمة محلية
5. الهدف: نسبة مخاطرة/عائد 1:2 على الأقل
✅ نصائح احترافية:
- أفضل النتائج عند دمجها مع مستويات الدعم/المقاومة
- تجنّب الدخول إذا كان الجهد قريبًا من الصفر (±5%)
- زِد حجم المركز عند شدة حقل > 30%
⚠️ HIGH TENSION (التوتر العالي)
شروط الظهور:
- 0.7 ≤ discharge_prob < 0.9
التفسير:
- السوق في حالة تراكم طاقة
- احتمال حركة قوية قريبة، لكن ليست فورية
- قد يستمر التراكم أو يحدث تفريغ
كيفية الاستفادة:
- الاستعداد: حضّر أوامر معلقة عند الاختراقات المحتملة
- المراقبة: راقب الشموع التالية بحثًا عن شمعة دافعة
- الانتقاء: لا تدخل كل إشارة — اختر تلك التي تتوافق مع الاتجاه العام
█ استراتيجيات التداول
📈 استراتيجية 1: تداول التفريغ (الأساسية)
المبدأ: الدخول عند "DISCHARGE IMMINENT" في اتجاه الجهد
الخطوات:
1. انتظر ظهور "⚡ DISCHARGE IMMINENT"
2. تحقق من اتجاه الجهد (+/−)
3. انتظر شمعة تأكيدية في اتجاه الجهد
4. ادخل مع افتتاح الشمعة التالية
5. وقف الخسارة وراء آخر قاع/قمة
6. الهدف: نسبة 1:2 أو 1:3
نسبة نجاح عالية جدًّا عند الالتزام بشروط التأكيد.
📈 استراتيجية 2: تتبع الهيمنة
المبدأ: التداول مع القطب المهيمن (الكرة الأكبر والأكثر إضاءة)
الخطوات:
1. حدد القطب المهيمن (الأكبر حجماً والأكثر إضاءة)
2. تداول في اتجاهه
3. احذر عند تقارب الأحجام (صراع)
مناسبة للإطارات الزمنية الأعلى (H1+).
📈 استراتيجية 3: صيد الانعكاس
المبدأ: الدخول عكس الاتجاه عند ظروف معينة
الشروط:
- شدة حقل عالية (>30%)
- جهد متطرف (>±40%)
- تباعد مع السعر (مثل: قمة سعرية جديدة مع تراجع الجهد)
⚠️ عالية المخاطرة — استخدم حجم مركز صغير.
📈 استراتيجية 4: الدمج مع التحليل الفني
أمثلة تأكيد قوي:
- اختراق مقاومة + تفريغ صعودي = إشارة شراء ممتازة
- كسر دعم + تفريغ هبوطي = إشارة بيع ممتازة
- نموذج Head & Shoulders + جهد سالب متزايد = تأكيد النموذج
- تباعد RSI + شدة حقل عالية = انعكاس محتمل
█ التنبيهات الجاهزة
Bullish Discharge
- الشرط: discharge_prob ≥ 0.9 + جهد موجب + جميع الفلاتر
- الرسالة: "⚡ Bullish discharge"
- الاستخدام: فرصة شراء عالية الاحتمالية
Bearish Discharge
- الشرط: discharge_prob ≥ 0.9 + جهد سالب + جميع الفلاتر
- الرسالة: "⚡ Bearish discharge"
- الاستخدام: فرصة بيع عالية الاحتمالية
✅ نصيحة: استخدم هذه التنبيهات مع إعداد "Once Per Bar" لتجنب التكرار.
█ المخرجات في نافذة البيانات
Bias
- القيم: −1 / 0 / +1
- التفسير: −1 = هبوطي، 0 = حياد، +1 = صعودي
- الاستخدام: لدمجها في استراتيجيات آلية
Discharge %
- النطاق: 0–100%
- التفسير: احتمال التفريغ
- الاستخدام: مراقبة تدرّج التوتر (مثال: من 40% إلى 85% في 5 شموع)
Field Strength
- النطاق: 0–100%
- التفسير: شدة الصراع
- الاستخدام: تحديد "نافذة الفرص" (25–35% مثالية للتفريغ)
Voltage
- النطاق: −100% إلى +100%
- التفسير: ميزان القوى
- الاستخدام: مراقبة التطرف (تشبع شرائي/بيعي محتمل)
█ الإعدادات المثلى حسب أسلوب التداول
المضاربة (Scalping)
- الإطار: 1M–5M
- Lookback: 10–15
- Threshold: 0.5–0.6
- Sensitivity: 1.2–1.5
- الفلاتر: Volume + Volatility
التداول اليومي (Day Trading)
- الإطار: 15M–1H
- Lookback: 20
- Threshold: 0.7
- Sensitivity: 1.0
- الفلاتر: Volume + Volatility
السوينغ (Swing Trading)
- الإطار: 4H–D1
- Lookback: 30–50
- Threshold: 0.8
- Sensitivity: 0.8
- الفلاتر: Volatility + Trend
الاستثمار (Position Trading)
- الإطار: D1–W1
- Lookback: 50–100
- Threshold: 0.85–0.95
- Sensitivity: 0.5–0.8
- الفلاتر: جميع الفلاتر
█ نصائح للاستخدام الأمثل
1. ابدأ بالإعدادات الافتراضية
جرّبه أولًا كما هو، ثم عدّل حسب أسلوبك.
2. راقب التوافق بين العناصر
أفضل الإشارات عندما:
- الجهد واضح (>│20%│)
- شدة الحقل معتدلة–عالية (15–35%)
- احتمال التفريغ مرتفع (>70%)
3. استخدم أطر زمنية متعددة
- الإطار الأعلى: تحديد الاتجاه العام
- الإطار الأدنى: توقيت الدخول
- تأكد من توافق الإشارات بين الأطر
4. دمج مع أدوات أخرى
- مستويات الدعم/المقاومة
- خطوط الاتجاه
- أنماط الشموع
- مؤشرات الحجم
5. احترم إدارة المخاطرة
- لا تخاطر بأكثر من 1–2% من الحساب
- استخدم دائمًا وقف الخسارة
- لا تدخل كل الإشارات — اختر الأفضل
█ تحذيرات مهمة
⚠️ ليس للاستخدام المنفرد
المؤشر أداة تحليل مساعِدة — لا تستخدمه بمعزل عن التحليل الفني أو الأساسي.
⚠️ لا يتنبأ بالمستقبل
الحسابات مبنية على البيانات التاريخية — النتائج ليست مضمونة.
⚠️ الأسواق تختلف
قد تحتاج لضبط الإعدادات لكل سوق:
- العملات: تركّز على Volume Filter
- الأسهم: أضف Trend Filter
- الكريبتو: خفّض Threshold قليلًا (أكثر تقلّبًا)
⚠️ الأخبار والأحداث
المؤشر لا يأخذ في الاعتبار الأخبار المفاجئة — تجنّب التداول قبل/أثناء الأخبار الرئيسية.
█ الميزات الفريدة
✅ أول تطبيق للكهرومغناطيسية على الأسواق
نموذج رياضي مبتكر — ليس مجرد مؤشر عادي
✅ كشف استباقي للانفجارات السعرية
يُنبّه قبل حدوث الحركة — وليس بعدها
✅ تصفية متعددة الطبقات
4 فلاتر ذكية تقلل الإشارات الكاذبة إلى الحد الأدنى
✅ تكيف ذكي مع التقلب
يضبط حساسيته تلقائيًّا حسب ظروف السوق
✅ تمثيل بصري ثلاثي الأبعاد متحرك
يجعل القراءة فورية — حتى للمبتدئين
✅ مرونة عالية
يعمل على جميع الأصول: أسهم، عملات، كريبتو، سلع
✅ تنبيهات مدمجة جاهزة
لا حاجة لإعدادات معقدة — جاهز للاستخدام الفوري
█ خاتمة: عندما يلتقي الفن بالعلم
Market Electromagnetic Field ليس مجرد مؤشر — بل فلسفة تحليلية جديدة.
هو الجسر بين:
- دقة الفيزياء في وصف الأنظمة الديناميكية
- ذكاء السوق في توليد فرص التداول
- علم النفس البصري في تسهيل القراءة الفورية
النتيجة: أداة لا تُقرأ — بل تُشاهد، تُشعر، وتُستشعر.
عندما ترى الكرة الخضراء تتوسع، والتوهج يصفرّ، والجزيئات تندفع لليمين — فأنت لا ترى أرقامًا، بل ترى طاقة السوق تتنفّس.
⚠️ إخلاء مسؤولية:
هذا المؤشر لأغراض تعليمية وتحليلية فقط. لا يُمثل نصيحة مالية أو استثمارية أو تداولية. استخدمه بالتزامن مع استراتيجيتك الخاصة وإدارة المخاطر. لا يتحمل TradingView ولا المطور مسؤولية أي قرارات مالية أو خسائر.
Algorithm Predator - ML-liteAlgorithm Predator - ML-lite
This indicator combines four specialized trading agents with an adaptive multi-armed bandit selection system to identify high-probability trade setups. It is designed for swing and intraday traders who want systematic signal generation based on institutional order flow patterns , momentum exhaustion , liquidity dynamics , and statistical mean reversion .
Core Architecture
Why These Components Are Combined:
The script addresses a fundamental challenge in algorithmic trading: no single detection method works consistently across all market conditions. By deploying four independent agents and using reinforcement learning algorithms to select or blend their outputs, the system adapts to changing market regimes without manual intervention.
The Four Trading Agents
1. Spoofing Detector Agent 🎭
Detects iceberg orders through persistent volume at similar price levels over 5 bars
Identifies spoofing patterns via asymmetric wick analysis (wicks exceeding 60% of bar range with volume >1.8× average)
Monitors order clustering using simplified Hawkes process intensity tracking (exponential decay model)
Signal Logic: Contrarian—fades false breakouts caused by institutional manipulation
Best Markets: Consolidations, institutional trading windows, low-liquidity hours
2. Exhaustion Detector Agent ⚡
Calculates RSI divergence between price movement and momentum indicator over 5-bar window
Detects VWAP exhaustion (price at 2σ bands with declining volume)
Uses VPIN reversals (volume-based toxic flow dissipation) to identify momentum failure
Signal Logic: Counter-trend—enters when momentum extreme shows weakness
Best Markets: Trending markets reaching climax points, over-extended moves
3. Liquidity Void Detector Agent 💧
Measures Bollinger Band squeeze (width <60% of 50-period average)
Identifies stop hunts via 20-bar high/low penetration with immediate reversal and volume spike
Detects hidden liquidity absorption (volume >2× average with range <0.3× ATR)
Signal Logic: Breakout anticipation—enters after liquidity grab but before main move
Best Markets: Range-bound pre-breakout, volatility compression zones
4. Mean Reversion Agent 📊
Calculates price z-scores relative to 50-period SMA and standard deviation (triggers at ±2σ)
Implements Ornstein-Uhlenbeck process scoring (mean-reverting stochastic model)
Uses entropy analysis to detect algorithmic trading patterns (low entropy <0.25 = high predictability)
Signal Logic: Statistical reversion—enters when price deviates significantly from statistical equilibrium
Best Markets: Range-bound, low-volatility, algorithmically-dominated instruments
Adaptive Selection: Multi-Armed Bandit System
The script implements four reinforcement learning algorithms to dynamically select or blend agents based on performance:
Thompson Sampling (Default - Recommended):
Uses Bayesian inference with beta distributions (tracks alpha/beta parameters per agent)
Balances exploration (trying underused agents) vs. exploitation (using proven winners)
Each agent's win/loss history informs its selection probability
Lite Approximation: Uses pseudo-random sampling from price/volume noise instead of true random number generation
UCB1 (Upper Confidence Bound):
Calculates confidence intervals using: average_reward + sqrt(2 × ln(total_pulls) / agent_pulls)
Deterministic algorithm favoring agents with high uncertainty (potential upside)
More conservative than Thompson Sampling
Epsilon-Greedy:
Exploits best-performing agent (1-ε)% of the time
Explores randomly ε% of the time (default 10%, configurable 1-50%)
Simple, transparent, easily tuned via epsilon parameter
Gradient Bandit:
Uses softmax probability distribution over agent preference weights
Updates weights via gradient ascent based on rewards
Best for Blend mode where all agents contribute
Selection Modes:
Switch Mode: Uses only the selected agent's signal (clean, decisive)
Blend Mode: Combines all agents using exponentially weighted confidence scores controlled by temperature parameter (smooth, diversified)
Lock Agent Feature:
Optional manual override to force one specific agent
Useful after identifying which agent dominates your specific instrument
Only applies in Switch mode
Four choices: Spoofing Detector, Exhaustion Detector, Liquidity Void, Mean Reversion
Memory System
Dual-Layer Architecture:
Short-Term Memory: Stores last 20 trade outcomes per agent (configurable 10-50)
Long-Term Memory: Stores episode averages when short-term reaches transfer threshold (configurable 5-20 bars)
Memory Boost Mechanism: Recent performance modulates agent scores by up to ±20%
Episode Transfer: When an agent accumulates sufficient results, averages are condensed into long-term storage
Persistence: Manual restoration of learned parameters via input fields (alpha, beta, weights, microstructure thresholds)
How Memory Works:
Agent generates signal → outcome tracked after 8 bars (performance horizon)
Result stored in short-term memory (win = 1.0, loss = 0.0)
Short-term average influences agent's future scores (positive feedback loop)
After threshold met (default 10 results), episode averaged into long-term storage
Long-term patterns (weighted 30%) + short-term patterns (weighted 70%) = total memory boost
Market Microstructure Analysis
These advanced metrics quantify institutional order flow dynamics:
Order Flow Toxicity (Simplified VPIN):
Measures buy/sell volume imbalance over 20 bars: |buy_vol - sell_vol| / (buy_vol + sell_vol)
Detects informed trading activity (institutional players with non-public information)
Values >0.4 indicate "toxic flow" (informed traders active)
Lite Approximation: Uses simple open/close heuristic instead of tick-by-tick trade classification
Price Impact Analysis (Simplified Kyle's Lambda):
Measures market impact efficiency: |price_change_10| / sqrt(volume_sum_10)
Low values = large orders with minimal price impact ( stealth accumulation )
High values = retail-dominated moves with high slippage
Lite Approximation: Uses simplified denominator instead of regression-based signed order flow
Market Randomness (Entropy Analysis):
Counts unique price changes over 20 bars / 20
Measures market predictability
High entropy (>0.6) = human-driven, chaotic price action
Low entropy (<0.25) = algorithmic trading dominance (predictable patterns)
Lite Approximation: Simple ratio instead of true Shannon entropy H(X) = -Σ p(x)·log₂(p(x))
Order Clustering (Simplified Hawkes Process):
Tracks self-exciting event intensity (coordinated order activity)
Decays at 0.9× per bar, spikes +1.0 when volume >1.5× average
High intensity (>0.7) indicates clustering (potential spoofing/accumulation)
Lite Approximation: Simple exponential decay instead of full λ(t) = μ + Σ α·exp(-β(t-tᵢ)) with MLE
Signal Generation Process
Multi-Stage Validation:
Stage 1: Agent Scoring
Each agent calculates internal score based on its detection criteria
Scores must exceed agent-specific threshold (adjusted by sensitivity multiplier)
Agent outputs: Signal direction (+1/-1/0) and Confidence level (0.0-1.0)
Stage 2: Memory Boost
Agent scores multiplied by memory boost factor (0.8-1.2 based on recent performance)
Successful agents get amplified, failing agents get dampened
Stage 3: Bandit Selection/Blending
If Adaptive Mode ON:
Switch: Bandit selects single best agent, uses only its signal
Blend: All agents combined using softmax-weighted confidence scores
If Adaptive Mode OFF:
Traditional consensus voting with confidence-squared weighting
Signal fires when consensus exceeds threshold (default 70%)
Stage 4: Confirmation Filter
Raw signal must repeat for consecutive bars (default 3, configurable 2-4)
Minimum confidence threshold: 0.25 (25%) enforced regardless of mode
Trend alignment check: Long signals require trend_score ≥ -2, Short signals require trend_score ≤ 2
Stage 5: Cooldown Enforcement
Minimum bars between signals (default 10, configurable 5-15)
Prevents over-trading during choppy conditions
Stage 6: Performance Tracking
After 8 bars (performance horizon), signal outcome evaluated
Win = price moved in signal direction, Loss = price moved against
Results fed back into memory and bandit statistics
Trading Modes (Presets)
Pre-configured parameter sets:
Conservative: 85% consensus, 4 confirmations, 15-bar cooldown
Expected: 60-70% win rate, 3-8 signals/week
Best for: Swing trading, capital preservation, beginners
Balanced: 70% consensus, 3 confirmations, 10-bar cooldown
Expected: 55-65% win rate, 8-15 signals/week
Best for: Day trading, most traders, general use
Aggressive: 60% consensus, 2 confirmations, 5-bar cooldown
Expected: 50-58% win rate, 15-30 signals/week
Best for: Scalping, high-frequency trading, active management
Elite: 75% consensus, 3 confirmations, 12-bar cooldown
Expected: 58-68% win rate, 5-12 signals/week
Best for: Selective trading, high-conviction setups
Adaptive: 65% consensus, 2 confirmations, 8-bar cooldown
Expected: Varies based on learning
Best for: Experienced users leveraging bandit system
How to Use
1. Initial Setup (5 Minutes):
Select Trading Mode matching your style (start with Balanced)
Enable Adaptive Learning (recommended for automatic agent selection)
Choose Thompson Sampling algorithm (best all-around performance)
Keep Microstructure Metrics enabled for liquid instruments (>100k daily volume)
2. Agent Tuning (Optional):
Adjust Agent Sensitivity multipliers (0.5-2.0):
<0.8 = Highly selective (fewer signals, higher quality)
0.9-1.2 = Balanced (recommended starting point)
1.3 = Aggressive (more signals, lower individual quality)
Monitor dashboard for 20-30 signals to identify dominant agent
If one agent consistently outperforms, consider using Lock Agent feature
3. Bandit Configuration (Advanced):
Blend Temperature (0.1-2.0):
0.3 = Sharp decisions (best agent dominates)
0.5 = Balanced (default)
1.0+ = Smooth (equal weighting, democratic)
Memory Decay (0.8-0.99):
0.90 = Fast adaptation (volatile markets)
0.95 = Balanced (most instruments)
0.97+ = Long memory (stable trends)
4. Signal Interpretation:
Green triangle (▲): Long signal confirmed
Red triangle (▼): Short signal confirmed
Dashboard shows:
Active agent (highlighted row with ► marker)
Win rate per agent (green >60%, yellow 40-60%, red <40%)
Confidence bars (█████ = maximum confidence)
Memory size (short-term buffer count)
Colored zones display:
Entry level (current close)
Stop-loss (1.5× ATR)
Take-profit 1 (2.0× ATR)
Take-profit 2 (3.5× ATR)
5. Risk Management:
Never risk >1-2% per signal (use ATR-based stops)
Signals are entry triggers, not complete strategies
Combine with your own market context analysis
Consider fundamental catalysts and news events
Use "Confirming" status to prepare entries (not to enter early)
6. Memory Persistence (Optional):
After 50-100 trades, check Memory Export Panel
Record displayed alpha/beta/weight values for each agent
Record VPIN and Kyle threshold values
Enable "Restore From Memory" and input saved values to continue learning
Useful when switching timeframes or restarting indicator
Visual Components
On-Chart Elements:
Spectral Layers: EMA8 ± 0.5 ATR bands (dynamic support/resistance, colored by trend)
Energy Radiance: Multi-layer glow boxes at signal points (intensity scales with confidence, configurable 1-5 layers)
Probability Cones: Projected price paths with uncertainty wedges (15-bar projection, width = confidence × ATR)
Connection Lines: Links sequential signals (solid = same direction continuation, dotted = reversal)
Kill Zones: Risk/reward boxes showing entry, stop-loss, and dual take-profit targets
Signal Markers: Triangle up/down at validated entry points
Dashboard (Configurable Position & Size):
Regime Indicator: 4-level trend classification (Strong Bull/Bear, Weak Bull/Bear)
Mode Status: Shows active system (Adaptive Blend, Locked Agent, or Consensus)
Agent Performance Table: Real-time win%, confidence, and memory stats
Order Flow Metrics: Toxicity and impact indicators (when microstructure enabled)
Signal Status: Current state (Long/Short/Confirming/Waiting) with confirmation progress
Memory Panel (Configurable Position & Size):
Live Parameter Export: Alpha, beta, and weight values per agent
Adaptive Thresholds: Current VPIN sensitivity and Kyle threshold
Save Reminder: Visual indicator if parameters should be recorded
What Makes This Original
This script's originality lies in three key innovations:
1. Genuine Meta-Learning Framework:
Unlike traditional indicator mashups that simply display multiple signals, this implements authentic reinforcement learning (multi-armed bandits) to learn which detection method works best in current conditions. The Thompson Sampling implementation with beta distribution tracking (alpha for successes, beta for failures) is statistically rigorous and adapts continuously. This is not post-hoc optimization—it's real-time learning.
2. Episodic Memory Architecture with Transfer Learning:
The dual-layer memory system mimics human learning patterns:
Short-term memory captures recent performance (recency bias)
Long-term memory preserves historical patterns (experience)
Automatic transfer mechanism consolidates knowledge
Memory boost creates positive feedback loops (successful strategies become stronger)
This architecture allows the system to adapt without retraining , unlike static ML models that require batch updates.
3. Institutional Microstructure Integration:
Combines retail-focused technical analysis (RSI, Bollinger Bands, VWAP) with institutional-grade microstructure metrics (VPIN, Kyle's Lambda, Hawkes processes) typically found in academic finance literature and professional trading systems, not standard retail platforms. While simplified for Pine Script constraints, these metrics provide insight into informed vs. uninformed trading , a dimension entirely absent from traditional technical analysis.
Mashup Justification:
The four agents are combined specifically for risk diversification across failure modes:
Spoofing Detector: Prevents false breakout losses from manipulation
Exhaustion Detector: Prevents chasing extended trends into reversals
Liquidity Void: Exploits volatility compression (different regime than trending)
Mean Reversion: Provides mathematical anchoring when patterns fail
The bandit system ensures the optimal tool is automatically selected for each market situation, rather than requiring manual interpretation of conflicting signals.
Why "ML-lite"? Simplifications and Approximations
This is the "lite" version due to necessary simplifications for Pine Script execution:
1. Simplified VPIN Calculation:
Academic Implementation: True VPIN uses volume bucketing (fixed-volume bars) and tick-by-tick buy/sell classification via Lee-Ready algorithm or exchange-provided trade direction flags
This Implementation: 20-bar rolling window with simple open/close heuristic (close > open = buy volume)
Impact: May misclassify volume during ranging/choppy markets; works best in directional moves
2. Pseudo-Random Sampling:
Academic Implementation: Thompson Sampling requires true random number generation from beta distributions using inverse transform sampling or acceptance-rejection methods
This Implementation: Deterministic pseudo-randomness derived from price and volume decimal digits: (close × 100 - floor(close × 100)) + (volume % 100) / 100
Impact: Not cryptographically random; may have subtle biases in specific price ranges; provides sufficient variation for agent selection
3. Hawkes Process Approximation:
Academic Implementation: Full Hawkes process uses maximum likelihood estimation with exponential kernels: λ(t) = μ + Σ α·exp(-β(t-tᵢ)) fitted via iterative optimization
This Implementation: Simple exponential decay (0.9 multiplier) with binary event triggers (volume spike = event)
Impact: Captures self-exciting property but lacks parameter optimization; fixed decay rate may not suit all instruments
4. Kyle's Lambda Simplification:
Academic Implementation: Estimated via regression of price impact on signed order flow over multiple time intervals: Δp = λ × Δv + ε
This Implementation: Simplified ratio: price_change / sqrt(volume_sum) without proper signed order flow or regression
Impact: Provides directional indicator of impact but not true market depth measurement; no statistical confidence intervals
5. Entropy Calculation:
Academic Implementation: True Shannon entropy requires probability distribution: H(X) = -Σ p(x)·log₂(p(x)) where p(x) is probability of each price change magnitude
This Implementation: Simple ratio of unique price changes to total observations (variety measure)
Impact: Measures diversity but not true information entropy with probability weighting; less sensitive to distribution shape
6. Memory System Constraints:
Full ML Implementation: Neural networks with backpropagation, experience replay buffers (storing state-action-reward tuples), gradient descent optimization, and eligibility traces
This Implementation: Fixed-size array queues with simple averaging; no gradient-based learning, no state representation beyond raw scores
Impact: Cannot learn complex non-linear patterns; limited to linear performance tracking
7. Limited Feature Engineering:
Advanced Implementation: Dozens of engineered features, polynomial interactions (x², x³), dimensionality reduction (PCA, autoencoders), feature selection algorithms
This Implementation: Raw agent scores and basic market metrics (RSI, ATR, volume ratio); minimal transformation
Impact: May miss subtle cross-feature interactions; relies on agent-level intelligence rather than feature combinations
8. Single-Instrument Data:
Full Implementation: Multi-asset correlation analysis (sector ETFs, currency pairs, volatility indices like VIX), lead-lag relationships, risk-on/risk-off regimes
This Implementation: Only OHLCV data from displayed instrument
Impact: Cannot incorporate broader market context; vulnerable to correlated moves across assets
9. Fixed Performance Horizon:
Full Implementation: Adaptive horizon based on trade duration, volatility regime, or profit target achievement
This Implementation: Fixed 8-bar evaluation window
Impact: May evaluate too early in slow markets or too late in fast markets; one-size-fits-all approach
Performance Impact Summary:
These simplifications make the script:
✅ Faster: Executes in milliseconds vs. seconds (or minutes) for full academic implementations
✅ More Accessible: Runs on any TradingView plan without external data feeds, APIs, or compute servers
✅ More Transparent: All calculations visible in Pine Script (no black-box compiled models)
✅ Lower Resource Usage: <500 bars lookback, minimal memory footprint
⚠️ Less Precise: Approximations may reduce statistical edge by 5-15% vs. academic implementations
⚠️ Limited Scope: Cannot capture tick-level dynamics, multi-order-book interactions, or cross-asset flows
⚠️ Fixed Parameters: Some thresholds hardcoded rather than dynamically optimized
When to Upgrade to Full Implementation:
Consider professional Python/C++ versions with institutional data feeds if:
Trading with >$100K capital where precision differences materially impact returns
Operating in microsecond-competitive environments (HFT, market making)
Requiring regulatory-grade audit trails and reproducibility
Backtesting with tick-level precision for strategy validation
Need true real-time adaptation with neural network-based learning
For retail swing/day trading and position management, these approximations provide sufficient signal quality while maintaining usability, transparency, and accessibility. The core logic—multi-agent detection with adaptive selection—remains intact.
Technical Notes
All calculations use standard Pine Script built-in functions ( ta.ema, ta.atr, ta.rsi, ta.bb, ta.sma, ta.stdev, ta.vwap )
VPIN and Kyle's Lambda use simplified formulas optimized for OHLCV data (see "Lite" section above)
Thompson Sampling uses pseudo-random noise from price/volume decimal digits for beta distribution sampling
No repainting: All calculations use confirmed bar data (no forward-looking)
Maximum lookback: 500 bars (set via max_bars_back parameter)
Performance evaluation: 8-bar forward-looking window for reward calculation (clearly disclosed)
Confidence threshold: Minimum 0.25 (25%) enforced on all signals
Memory arrays: Dynamic sizing with FIFO queue management
Limitations and Disclaimers
Not Predictive: This indicator identifies patterns in historical data. It cannot predict future price movements with certainty.
Requires Human Judgment: Signals are entry triggers, not complete trading strategies. Must be confirmed with your own analysis, risk management rules, and market context.
Learning Period Required: The adaptive system requires 50-100 bars minimum to build statistically meaningful performance data for bandit algorithms.
Overfitting Risk: Restoring memory parameters from one market regime to a drastically different regime (e.g., low volatility to high volatility) may cause poor initial performance until system re-adapts.
Approximation Limitations: Simplified calculations (see "Lite" section) may underperform academic implementations by 5-15% in highly efficient markets.
No Guarantee of Profit: Past performance, whether backtested or live-traded, does not guarantee future performance. All trading involves risk of loss.
Forward-Looking Bias: Performance evaluation uses 8-bar forward window—this creates slight look-ahead for learning (though not for signals). Real-time performance may differ from indicator's internal statistics.
Single-Instrument Limitation: Does not account for correlations with related assets or broader market regime changes.
Recommended Settings
Timeframe: 15-minute to 4-hour charts (sufficient volatility for ATR-based stops; adequate bar volume for learning)
Assets: Liquid instruments with >100k daily volume (forex majors, large-cap stocks, BTC/ETH, major indices)
Not Recommended: Illiquid small-caps, penny stocks, low-volume altcoins (microstructure metrics unreliable)
Complementary Tools: Volume profile, order book depth, market breadth indicators, fundamental catalysts
Position Sizing: Risk no more than 1-2% of capital per signal using ATR-based stop-loss
Signal Filtering: Consider external confluence (support/resistance, trendlines, round numbers, session opens)
Start With: Balanced mode, Thompson Sampling, Blend mode, default agent sensitivities (1.0)
After 30+ Signals: Review agent win rates, consider increasing sensitivity of top performers or locking to dominant agent
Alert Configuration
The script includes built-in alert conditions:
Long Signal: Fires when validated long entry confirmed
Short Signal: Fires when validated short entry confirmed
Alerts fire once per bar (after confirmation requirements met)
Set alert to "Once Per Bar Close" for reliability
Taking you to school. — Dskyz, Trade with insight. Trade with anticipation.
Multi-timeframe Pivot PointThis indicator is a lightweight indicator designed to display higher timeframe pivot levels on your chart.
It helps traders quickly identify key support and resistance zones derived from higher timeframes (such as daily or weekly pivots) while analyzing lower timeframes (e.g., 15m or 1h charts).
Calculation Logic
This indicator uses the classic pivot point formula, calculated from high, low, and close values:
PP = (High + Low + Close) / 3
R1 = 2 * PP - Low
S1 = 2 * PP - High
R2 = PP + (High - Low)
S2 = PP - (High - Low)
R3 = R1 + (High - Low)
S3 = S1 - (High - Low)
Additionally, it includes breakout levels:
HBOP = PP + PP + (High - Low) - Low
LBOP = PP + PP - (High - Low) - High
Price Action Brooks ProPrice Action Brooks Pro (PABP) - Professional Trading Indicator
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📊 OVERVIEW
Price Action Brooks Pro (PABP) is a professional-grade TradingView indicator developed based on Al Brooks' Price Action trading methodology. It integrates decades of Al Brooks' trading experience and price action analysis techniques into a comprehensive technical analysis tool, helping traders accurately interpret market structure and identify trading opportunities.
• Applicable Markets: Stocks, Futures, Forex, Cryptocurrencies
• Timeframes: 1-minute to Daily (5-minute chart recommended)
• Theoretical Foundation: Al Brooks Price Action Trading Method
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🎯 CORE FEATURES
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1️⃣ INTELLIGENT GAP DETECTION SYSTEM
Automatically identifies and marks three critical types of gaps in the market.
TRADITIONAL GAP
• Detects complete price gaps between bars
• Upward gap: Current bar's low > Previous bar's high
• Downward gap: Current bar's high < Previous bar's low
• Hollow border design - doesn't obscure price action
• Color coding: Upward gaps (light green), Downward gaps (light pink)
• Adjustable border: 1-5 pixel width options
TAIL GAP
• Detects price gaps between bar wicks/shadows
• Analyzes across 3 bars for precision
• Identifies hidden market structure
BODY GAP
• Focuses only on gaps between bar bodies (open/close)
• Filters out wick noise
• Disabled by default, enable as needed
Trading Significance:
• Gaps signal strong momentum
• Gap fills provide trading opportunities
• Consecutive gaps indicate trend continuation
✓ Independent alert system for all gap types
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
2️⃣ RTH BAR COUNT (Trading Session Counter)
Intelligent counting system designed for US stock intraday trading.
FEATURES
• RTH Only Display: Regular Trading Hours (09:30-15:00 EST)
• 5-Minute Chart Optimized: Displays every 3 bars (15-minute intervals)
• Daily Auto-Reset: Counting starts from 1 each trading day
SMART COLOR CODING
• 🔴 Red (Bars 18 & 48): Critical turning moments (1.5h & 4h)
• 🔵 Sky Blue (Multiples of 12): Hourly markers (12, 24, 36...)
• 🟢 Light Green (Bar 6): Half-hour marker (30 minutes)
• ⚫ Gray (Others): Regular 15-minute interval markers
Al Brooks Time Theory:
• Bar 18 (90 min): First 90 minutes determine daily trend
• Bar 48 (4 hours): Important afternoon turning point
• Hourly markers: Track institutional trading rhythm
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
3️⃣ FOUR-LINE EMA SYSTEM
Professional-grade configurable moving average system.
DEFAULT CONFIGURATION
• EMA 20: Short-term trend (Al Brooks' most important MA)
• EMA 50: Medium-short term reference
• EMA 100: Medium-long term confirmation
• EMA 200: Long-term trend and bull/bear dividing line
FLEXIBLE CUSTOMIZATION
Each EMA can be independently configured:
• On/Off toggle
• Data source selection (close/high/low/open, etc.)
• Custom period length
• Offset adjustment
• Color and transparency
COLOR SCHEME
• EMA 20: Dark brown, opaque (most important)
• EMA 50/100/200: Blue-purple gradient, 70% transparent
TRADING APPLICATIONS
• Bullish Alignment: Price > 20 > 50 > 100 > 200
• Bearish Alignment: 200 > 100 > 50 > 20 > Price
• EMA Confluence: All within <1% = major move precursor
Al Brooks Quote:
"The EMA 20 is the most important moving average. Almost all trading decisions should reference it."
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
4️⃣ PREVIOUS VALUES (Key Prior Price Levels)
Automatically marks important price levels that often act as support/resistance.
THREE INDEPENDENT CONFIGURATIONS
Each group configurable for:
• Timeframe (1D/60min/15min, etc.)
• Price source (close/high/low/open/CurrentOpen, etc.)
• Line style and color
• Display duration (Today/TimeFrame/All)
SMART OPEN PRICE LABELS ⭐
• Auto-displays "Open" label when CurrentOpen selected
• Label color matches line color
• Customizable label size
TYPICAL SETUP
• 1st Line: Previous close (Support/Resistance)
• 2nd Line: Previous high (Breakout target)
• 3rd Line: Previous low (Support level)
Al Brooks Magnet Price Theory:
• Previous open: Price frequently tests opening price
• Previous high/low: Strongest support/resistance
• Breakout confirmation: Breaking prior levels = trend continuation
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
5️⃣ INSIDE & OUTSIDE BAR PATTERN RECOGNITION
Automatically detects core candlestick patterns from Al Brooks' theory.
ii PATTERN (Consecutive Inside Bars)
• Current bar contained within previous bar
• Two or more consecutive
• Labels: ii, iii, iiii (auto-accumulates)
• High-probability breakout setup
• Stop loss: Outside both bars
Trading Significance:
"Inside bars are one of the most reliable breakout setups, especially three or more consecutive inside bars." - Al Brooks
OO PATTERN (Consecutive Outside Bars)
• Current bar engulfs previous bar
• Two or more consecutive
• Labels: oo, ooo (auto-accumulates)
• Indicates indecision or volatility increase
ioi PATTERN (Inside-Outside-Inside)
• Three-bar combination: Inside → Outside → Inside
• Auto-detected and labeled
• Tug-of-war pattern
• Breakout direction often very strong
SMART LABEL SYSTEM
• Auto-accumulation counting
• Dynamic label updates
• Customizable size and color
• Positioned above bars
✓ Independent alerts for all patterns
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
💡 USE CASES
INTRADAY TRADING
✓ Bar Count (timing rhythm)
✓ Traditional Gap (strong signals)
✓ EMA 20 + 50 (quick trend)
✓ ii/ioi Patterns (breakout points)
SWING TRADING
✓ Previous Values (key levels)
✓ EMA 20 + 50 + 100 (trend analysis)
✓ Gaps (trend confirmation)
✓ iii Patterns (entry timing)
TREND FOLLOWING
✓ All four EMAs (alignment analysis)
✓ Gaps (continuation signals)
✓ Previous Values (targets)
BREAKOUT TRADING
✓ iii Pattern (high-reliability setup)
✓ Previous Values (targets)
✓ EMA 20 (trend direction)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🎨 DESIGN FEATURES
PROFESSIONAL COLOR SCHEME
• Gaps: Hollow borders + light colors
• Bar Count: Smart multi-color coding
• EMAs: Gradient colors + transparency hierarchy
• Previous Values: Customizable + smart labels
CLEAR VISUAL HIERARCHY
• Important elements: Opaque (EMA 20, bar count)
• Reference elements: Semi-transparent (other EMAs, gaps)
• Hollow design: Doesn't obscure price action
USER-FRIENDLY INTERFACE
• Clear functional grouping
• Inline layout saves space
• All colors and sizes customizable
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📚 AL BROOKS THEORY CORE
READING PRICE ACTION
"Don't try to predict the market, read what the market is telling you."
PABP converts core concepts into visual tools:
• Trend Assessment: EMA system
• Time Rhythm: Bar Count
• Market Structure: Gap analysis
• Trade Setups: Inside/Outside Bars
• Support/Resistance: Previous Values
PROBABILITY THINKING
• ii pattern: Medium probability
• iii pattern: High probability
• iii + EMA 20 support: Very high probability
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
⚙️ TECHNICAL SPECIFICATIONS
• Pine Script Version: v6
• Maximum Objects: 500 lines, 500 labels, 500 boxes
• Alert Functions: 8 independent alerts
• Supported Timeframes: All (5-min recommended for Bar Count)
• Compatibility: All TradingView plans, Mobile & Desktop
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🚀 RECOMMENDED INITIAL SETTINGS
GAPS
• Traditional Gap: ✓
• Tail Gap: ✓
• Border Width: 2
BAR COUNT
• Use Bar Count: ✓
• Label Size: Normal
EMA
• EMA 20: ✓
• EMA 50: ✓
• EMA 100: ✓
• EMA 200: ✓
PREVIOUS VALUES
• 1st: close (Previous close)
• 2nd: high (Previous high)
• 3rd: low (Previous low)
INSIDE & OUTSIDE BAR
• All patterns: ✓
• Label Size: Large
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🌟 WHY CHOOSE PABP?
✅ Solid Theoretical Foundation
Based on Al Brooks' decades of trading experience
✅ Complete Professional Features
Systematizes complex price action analysis
✅ Highly Customizable
Every feature adjustable to personal style
✅ Excellent Performance
Optimized code ensures smooth experience
✅ Continuous Updates
Constantly improving based on feedback
✅ Suitable for All Levels
Benefits beginners to professionals
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📖 RECOMMENDED LEARNING
Al Brooks Books:
• "Trading Price Action Trends"
• "Trading Price Action Trading Ranges"
• "Trading Price Action Reversals"
Learning Path:
1. Understand basic candlestick patterns
2. Learn EMA applications
3. Master market structure analysis
4. Develop trading system
5. Continuous practice and optimization
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
⚠️ RISK DISCLOSURE
IMPORTANT NOTICE:
• For educational and informational purposes only
• Does not constitute investment advice
• Past performance doesn't guarantee future results
• Trading involves risk and may result in capital loss
• Trade according to your risk tolerance
• Test thoroughly in demo account first
RESPONSIBLE TRADING:
• Always use stop losses
• Control position sizes reasonably
• Don't overtrade
• Continuous learning and improvement
• Keep trading journal
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📜 COPYRIGHT
Price Action Brooks Pro (PABP)
Author: © JimmC98
License: Mozilla Public License 2.0
Pine Script Version: v6
Acknowledgments:
Thanks to Dr. Al Brooks for his contributions to price action trading. This indicator is developed based on his theories.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Experience professional-grade price action analysis now!
"The best traders read price action, not indicators. But when indicators help you read price action better, use them." - Al Brooks
Liquidity Grab + RSI Divergence═══════════════════════════════════════════════════════════════
LIQUIDITY GRAB + RSI DIVERGENCE INDICATOR
═══════════════════════════════════════════════════════════════
📌 OVERVIEW
This indicator identifies high-probability reversals by combining:
• Liquidity sweeps (stop hunts)
• RSI divergence confirmation
• Filters false breakouts automatically
═══════════════════════════════════════════════════════════════
🟢 BUY SIGNAL (Green Triangle Up)
REQUIRES BOTH CONDITIONS:
1. Liquidity Grab Below Previous Low
• Price breaks BELOW recent low
• Candle CLOSES ABOVE that low
• Traps sellers who shorted the breakdown
2. Bullish RSI Divergence
• Price: Lower Low (LL)
• RSI: Higher Low (HL)
• Shows weakening downward momentum
➜ Result: Potential bullish reversal
═══════════════════════════════════════════════════════════════
🔴 SELL SIGNAL (Red Triangle Down)
REQUIRES BOTH CONDITIONS:
1. Liquidity Grab Above Previous High
• Price breaks ABOVE recent high
• Candle CLOSES BELOW that high
• Traps buyers who bought the breakout
2. Bearish RSI Divergence
• Price: Higher High (HH)
• RSI: Lower High (LH)
• Shows weakening upward momentum
➜ Result: Potential bearish reversal
═══════════════════════════════════════════════════════════════
📊 VISUAL INDICATORS
Main Signals:
🔺 Large Green Triangle = BUY (Liq Grab + Bullish Div)
🔻 Large Red Triangle = SELL (Liq Grab + Bearish Div)
Reference Levels:
━ Red Line = Previous High Level
━ Green Line = Previous Low Level
Additional Markers (Optional):
○ Small Green Circle = Liquidity grab low only
○ Small Red Circle = Liquidity grab high only
✕ Small Blue Cross = Bullish divergence only
✕ Small Orange Cross = Bearish divergence only
═══════════════════════════════════════════════════════════════
⚙️ SETTINGS
1. Lookback Period (Default: 20)
• Range: 5-100
• Sets how far back to identify previous highs/lows
• Higher = fewer but stronger levels
• Lower = more frequent but weaker levels
2. RSI Length (Default: 14)
• Range: 5-50
• Standard RSI calculation period
• 14 is industry standard
3. RSI Divergence Lookback (Default: 5)
• Range: 3-20
• Controls pivot point sensitivity
• Higher = fewer divergence signals
• Lower = more divergence signals
4. Show Labels (Default: ON)
• Toggle BUY/SELL text labels
• Disable for cleaner chart view
═══════════════════════════════════════════════════════════════
💡 HOW TO USE
Step 1: WAIT FOR CONFIRMATION
• Only trade LARGE TRIANGLE signals
• Ignore small circles/crosses alone
Step 2: CHECK TIMEFRAME
• Best on: 15min, 1H, 4H, Daily
• Avoid: 1min, 5min (too noisy)
Step 3: CONFIRM CONTEXT
• Check overall market trend
• Identify key support/resistance
• Look for confluence with price action
Step 4: ENTRY & RISK MANAGEMENT
• Enter on signal candle close or pullback
• Stop loss below/above the liquidity grab wick
• Target: Previous swing high/low or key levels
• Risk/Reward: Minimum 1:2 ratio
Step 5: SET ALERTS
• Create alert for "BUY Signal"
• Create alert for "SELL Signal"
• Never miss opportunities
═══════════════════════════════════════════════════════════════
✅ BEST PRACTICES
DO:
✓ Use on multiple timeframes for confluence
✓ Combine with support/resistance zones
✓ Wait for both conditions (liq grab + divergence)
✓ Practice on demo account first
✓ Use proper position sizing
DON'T:
✗ Trade every small circle/cross
✗ Use on very low timeframes (<15min)
✗ Ignore overall market context
✗ Trade without stop loss
✗ Risk more than 1-2% per trade
═══════════════════════════════════════════════════════════════
⚠️ IMPORTANT NOTES
• This is a CONFIRMATION tool, not a holy grail
• No indicator is 100% accurate
• Combine with your trading strategy
• Backtest on your preferred instruments
• Adjust parameters for your trading style
• Higher timeframes = more reliable signals
• Always use risk management
═══════════════════════════════════════════════════════════════
🔔 ALERTS INCLUDED
Two alert conditions are built-in:
1. "BUY Signal" - Liquidity Grab + Bullish RSI Divergence
2. "SELL Signal" - Liquidity Grab + Bearish RSI Divergence
═══════════════════════════════════════════════════════════════
📈 RECOMMENDED SETTINGS BY TIMEFRAME
5-15 Min Charts:
• Lookback: 10-15
• RSI Length: 14
• RSI Div Lookback: 3-5
1H-4H Charts:
• Lookback: 20-30
• RSI Length: 14
• RSI Div Lookback: 5-7
Daily Charts:
• Lookback: 30-50
• RSI Length: 14
• RSI Div Lookback: 7-10
═══════════════════════════════════════════════════════════════
Good luck and trade safe! 🚀
Aynet- True Wick Projector for Non-Standard ChartsTechnical Explanation: "Data Projection and Synchronization"
This script is, at its core, a "data projection" tool. The fundamental technical problem it solves is compensating for the information loss that occurs when using different data visualization models.
1. The Core Problem: Information Loss
Standard Charts (Time-Based): Normal candlesticks are time-based. Each candle represents a fixed time interval (like 1 hour or 1 day) and displays the complete Open, High, Low, and Close (OHLC) data for that period. The "wicks" show the volatility and the extreme price points (the High and Low).
Non-Standard Charts (Price/Momentum-Based): Charts like Kagi, Renko, or Line Break filter out time. Their only concern is price movement. While one Renko box or Kagi line is forming, 10 or more time-based candles might have formed in the background. During this "noise filtering" process, the true high and low values (the wicks) from those underlying candles are lost.
The problem is this: A trader looking at a non-standard chart cannot see how high or low the price actually went while that block or line was forming. This is a critical loss of information regarding market volatility, support/resistance levels, and price rejection.
2. The Technical Solution: A "Dual Data Stream"
This script intelligently combines two different data streams to compensate for this information loss:
Main Stream (Current Chart): The open and close data from your active Kagi, Renko, etc., chart.
Secondary Stream (Projected Data): The high and low data from the underlying standard (time-based) chart.
3. The Code's Methodical Steps
Step 1: Identifying the Data Source (syminfo...)
This step precisely identifies the source for the secondary data stream. By using syminfo.prefix + ":" + syminfo.ticker (e.g., "NASDAQ:AAPL"), it guarantees that the data is pulled from the exact correct instrument and exchange.
Step 2: Data Request & "Lookahead" Synchronization (request.security)
This is the most critical part of the operation.
request.security(...): This is the function Pine Script uses to pull data from another dataset (the secondary stream) onto the current chart.
: This tells the function, "The only data I care about is the 'High' and 'Low' of the standard candle from that timeframe."
lookahead = barmerge.lookahead_on (The Critical Key): This command solves the "time paradox."
Normally (without this): request.security fetches data from the last completed bar. But as your Kagi bar is currently forming, the standard candle is also currently forming. This would cause the data to always be one bar behind (lag).
With lookahead_on: This permits the script to "look ahead" at the data from the currently forming, incomplete standard bar. Because of this, as your Kagi bar moves, the true wick data is updated in real-time. This achieves real-time synchronization.
Step 3: Visual Engineering (plotcandle)
After the script retrieves the data, it must "draw" it. However, it only wants to draw the wicks, not the candle bodies.
bodyTop and bodyBottom: First, it finds the top and bottom of the current Kagi bar's body (using math.max(open, close)).
Plotting the Upper Wick (Green):
It calls the plotcandle function and instructs it to draw a fake candle.
It fixes this fake candle's Open, Low, and Close (open, low, close) values to the top of the Kagi bar's body (bodyTop).
It only sets the High (high) value to the realHigh it fetched with request.security.
The result: A wick is drawn from the bodyTop level up to the realHigh level, with no visible body.
Plotting the Lower Wick (Red):
It applies the reverse logic.
It fixes the fake candle's Open, High, and Close values to the bottom of the Kagi bar's body (bodyBottom).
It only sets the Low (low) value to the realLow.
The result: A lower wick is drawn from bodyBottom down to realLow.
Invisibility (color.new(color.white, 100)):
In both plotcandle calls, the color (body color) and bordercolor are set to 100 transparency. This makes the "fake" candle bodies completely invisible, leaving only the colored wicks.
Conclusion (Technical Summary)
This script reclaims the volatility data (the wicks) that is naturally sacrificed by non-standard charts.
It achieves this with technical precision by creating a secondary data stream using request.security and synchronizing it with zero lag using the lookahead_on parameter.
Finally, it intelligently manipulates the plotcandle function (by creating invisible bodies) to project this lost data onto your Kagi/Renko chart as an "augmented reality" layer. This allows a trader to benefit from the clean, noise-filtered view of a non-standard chart without losing access to the full picture of market volatility.






















